复制数组元素
如果目标数组不存在,可使用 slice/ concat 复制
var destinationArray = sourceArray.slice();
var destinationArray = sourceArray.concat();
如果目标数组存在,且想保持引用,可使用 push
destinationArray.push.apply(destinationArray, sourceArray);
元素无引用复制
如果数组中对象是object,以上方法复制的数组中的元素,还是相互引用的
var src = [ { name: 'a' }, { name: 'b' } ];var tar = src.slice();//更改 arr 中元素src[0].name = 'c';console.log(tar[0]);> { name: "c" }
最简单的方法是使用 JSON 序列化来复制完全独立的数组
var cloneArray = JSON.parse(JSON.stringify(originalArray));
回复 (0)
微信扫码 立即评论
