Javascriptのスプレッド構文は上書きされる??

programming エンジニア
記事内に広告が含まれています。

スプレッド構文とは

配列式や文字列などの反復可能オブジェクトを、0 個以上の引数 (関数呼び出しの場合) や要素 (配列リテラルの場合) を期待された場所で展開したり、オブジェクト式を、0 個以上のキーと値の組 (オブジェクトリテラルの場合) を期待された場所で展開したりすることができます。

参照: スプレッド構文

Reactでは複数のpropsを渡すときなどによく使います!

スプレッド構文を使うときの注意点

同名プロパティが存在するオブジェクト内では、

後に書いた方でプロパティが上書きされるので注意しましょう!

const hash1 = { a: 1, b: 2, c: 3 }
const hash2 = { ...hash1, d: 4 }
const hash3 = { ...hash1, c: 4 }

> hash2
{ a: 1, b: 2, c: 3, d: 4 } // a~cを展開, dを追加

> hash3
{ a: 1, b: 2, c: 4 } // cを上書き

コメント