javascriptのObject.assignとは

Object.assignとは

オブジェクトを併合するメソッド。
まず使用方法は以下の通りです。

Object.assign(target, ...sources)

特徴(働き)

Object.assignの最初の引数はターゲットです。
また、二番目からの引数はオブジェクトになります。
結論は、二番目からの引数(オブジェクト)は全て一番目の引数に併合される特徴を持っています。
では実際にコードで確認します。

複数のオブジェクトを一つにまとめる

const obj1 = {a: 1}
const obj2 = {b: 2}
const obj3 = {c: 3}

const newObj = Object.assign({}, obj1, obj2, obj3)
console.log(newObj) // { "a": 1, "b": 2, "c": 3 }

上記のコードのようにObject.assignはobj1,obj2,obj3 のオブジェクトを簡単に一つにまとめることができます。
ただしここで注意すべき点があります。

const obj1 = {a: 1}
const obj2 = {b: 2}
const obj3 = {c: 3}

const newObj = Object.assign(obj1, obj2, obj3)
console.log(newObj) // { "a": 1, "b": 2, "c": 3 }
console.log(obj1) // { "a": 1, "b": 2, "c": 3 }

一番目の引数にからのオブジェクトではなく、obj1を入れた場合、obj1に上書きされてしまいます。
こういう理由で、もしobj1の変更を望まない場合、Object.assignの一番目の引数にはからのオブジェクト入れる必要があります。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です