プログラミング入門

以下のような関数があるとします。

const set = (obj, property, value) => {//objにpropertyがあればvalueをセットしてtrueを返す。なければfalseを返す}

この ...

JavaScript, プログラミング入門

関数の引数がどうしても3つや4つになる場合は、ひとつのオブジェクトして渡すことを考えてみます。

const myFunc = (hoge, foo, bar) => {//do something}const data = ...

プログラミング入門

関数の引数が2つ以上だと順序を気にしないといけない、というデメリットがあります。

以下の関数は name と file という二つの引数をとります。

const getHtml = (name, file) => ...

プログラミング入門, リファクタリング

引数の数は少ないに越したことはないですが、以下は個人的な基準です。

引数なしが理想

引数がないのが一番シンプルです。

しかし、動的に結果が変わるのがプログラムなので、このケースはあまりない気がします。

プログラミング入門, リファクタリング

関数の引数がフラグ(boolean)だった場合は、その関数をリファクタリングするチャンスかもしれません。

というのも、フラグを引数にとっているケースでは、そのフラグによって処理を分岐している可能性があるからです。

プログラミング入門

すでにあるデータ(配列)に対して新しいデータを追加する処理があるとします。

あるシステムではaddXXXXというような命名をしていました。

例えば、addCustomer・addHistoryなどです。 ...

JavaScript

ひとつの関数の中で抽象度が異なる処理があるのは誤解を招くもとになります。

例えば、isAdminがtrueかfalseで分岐する処理が関数の中にあるとします。

const hoge = () => { if(i ...

JavaScript

Array(x)をスプレッド演算子を使って配列に変換してから、map を呼び出す必要がある。

.map((_, i) => `tami${i}`) //

未分類

if文の中にさらにif文があり、その中にさらにif文がある、、、というような条件文の地獄はよく発生するコードだと思います。

条件文を書く時には、条件文のブロックを一行にできないかを考えながらやると、簡潔なコードになります。 ...

JavaScript, プログラミング入門

関数やメソッドに名前をつけるときは、他とは明確に異なることがわかるようにするべきです。

例えば、tamiXXXXXX のように、すべての命名の先頭に同じ文字列をくっつけると、他との区別がしづらくなります。

ta ...