目的
スプレッド演算子はNext jsでデータを更新する時によく利用するので使い方まとめ
オブジェクトを更新する際のポイント
オブジェクトの更新
bのオブジェクトが新しいオブジェクトに
const obj = { a: 'aa', b: { aa: "aa", b: "bb"}, c: [{ id:1, name: "name1"}, { id:2, name: "name2"}] } const newB = { aa: "ccc", b: "ee" } console.log({...obj, b: {...newB}}) => [object Object] { a: "aa", b: [object Object] { aa: "ccc", b: "ee" }, c: [[object Object] { id: 1, name: "name1" }, [object Object] { id: 2, name: "name2" }] }
配列の更新
const obj = { a: 'aa', b: { aa: "aa", b: "bb"}, c: [{ id:1, name: "name1"}, { id:2, name: "name2"}] } const newC = [{ id: 1, name: "name3"}, { id:2, name: "name4"}] console.log({...obj, c: [...newC] }) => [object Object] { a: "aa", b: [object Object] { aa: "aa", b: "bb" }, c: [[object Object] { id: 1, name: "name3" }, [object Object] { id: 2, name: "name4" }] }