オブジェクト/配列のコピー
1456 ワード
オブジェクトのコピー let profile = {
name : "철수",
age : 8,
school : "다람쥐초등학교"
}
名前のオブジェクトをlet profile 2=profileにコピーします.
レプリカのデータを変更すると、元のデータも変更されます.データだけでなく、アドレスもコピーされるからです.
似たような内容をコピーするために、
表計算ドキュメント演算子
この部分.
...profile
と書く
でも、
ネストされたオブジェクトの嗜好1を修正しました.
原本も交換しました.
ネストされたオブジェクトのアドレスを持ってきたからです.これを浅いコピーと呼びます.
オブジェクトを文字列に置き換え、コピーしてからオブジェクトに置き換えますか?
JSON.parseでは、オブジェクトを文字列に置き換えることができます.
JSON.stringgifyは文字列をオブジェクトに変換できます.
これにより、コピーされた新しいオブジェクトが得られます.
深くコピー
JSON.stringgifyは少し遅いです
これを速くできるライブラリがあります.
npm lodashのclonedeep()です.
import _ from 'lodash'
インポートして使用できます.
アレイのコピー const aaa = ["a", "b", "c"]
const bbb = ["d", "e"]
const ccc = [aaa, bbb]
cccの結果値は["a"、"b"、"c"、"d"、"e]である.
こうして出てきた
次の表計算ドキュメント演算子を使用する必要があります.const ccc = [...aaa, ...bbb]
「a」、「b」、「c」、「d」、「e」という新しい配列が得られる.
Reference
この問題について(オブジェクト/配列のコピー), 我々は、より多くの情報をここで見つけました
https://velog.io/@owlsuri/객체-복사
テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol
let profile = {
name : "철수",
age : 8,
school : "다람쥐초등학교"
}
const aaa = ["a", "b", "c"]
const bbb = ["d", "e"]
const ccc = [aaa, bbb]
cccの結果値は["a"、"b"、"c"、"d"、"e]である.こうして出てきた
次の表計算ドキュメント演算子を使用する必要があります.
const ccc = [...aaa, ...bbb]
「a」、「b」、「c」、「d」、「e」という新しい配列が得られる.Reference
この問題について(オブジェクト/配列のコピー), 我々は、より多くの情報をここで見つけました https://velog.io/@owlsuri/객체-복사テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol