正在回答 回答被采纳积分+1
1回答
好帮手慕久久
2022-10-28 17:39:14
同学你好,解答如下:
1、假设数组A通过深克隆得到了数组B,那么数组A和数组B是独立的两个数据,二者没有任何关联(断绝关系)。改变数组A并不会影响数组B。
2、浅克隆则是指,得到的数组B可能和数组A还存在一定的联系,改变数组A时可能会影响数组B(二者可能会相互影响)。最常见的就是如下形式:
// 数组A,里面有二维数组[2,3] var arrA = [1, [2, 3]]; // 数组B var arrB = []; // 通过A 浅克隆 得到数组B for (var i = 0; i < arrA.length; i++) { arrB.push(arrA[i]); } // 数组B和数组A长的一样 console.log(arrB); // [1, [2, 3]]
上述代码就是浅克隆,得到的数组A和数组B还有关联,没完全切断关联。比如将数组A的二维数组中,追加数字4,会发现B也改着变了:
同学结合上述描述,再看一遍视频,试试理解一下。
祝学习愉快!
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星