通过JSON.stringfy()和JSON.parse(),实现对象或者数组深拷贝

    JavaScript中对象或者数组等引用类型,直接拷贝,改变一个另外一个也会改变;

    下列代码在浏览器控制台执行:

var arr = [1,2,3];
var arr1 = arr;
arr1.push(4);
console.log(arr);  //[1,2,3,4]
console.log(arr1);//[1,2,3,4]

  通过JSON.stringfy()和JSON.parse()转换

var arr = [1,2,3];
var arr1 = JSON.stringify(arr);
var arr2 = JSON.parse(arr1);
arr2.push(4);
console.log(arr); //[1, 2, 3]
console.log(arr1);//字符串[1,2,3]
console.log(arr2);//[1, 2, 3, 4]

  

posted @ 2017-07-06 17:38  sailor4518  阅读(3801)  评论(0编辑  收藏  举报