jsの高度な使い方

1960 ワード

1.1行のコードは配列オブジェクトの深いコピーを実現する普通の配列は直接[]を使用する.concat(_test)
var _test = [1,2,3];//   
var _testCopy = [].concat(_test);//    
_testCopy[0]=4;
console.log(_test);// [1,2,3]
console.log(_testCopy);//[4,2,3]

オブジェクト配列:[].concat(JSON.parse(JSON.stringify(_test)))
var _test = [{"name":"weifeng"},{"name":"boy"}];//   
var _testCopy = [].concat(JSON.parse(JSON.stringify(_test)));//    ,         
_testCopy[1].name="girl";
console.log(_test);// [{"name":"weifeng"},{"name":"boy"}]
console.log(_testCopy);//[{"name":"weifeng"},{"name":"girl"}]