数组直接赋值是指针的转移,指向同一个内存空间,而不是真正的复制值过去

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8" />
    <title>Document</title>
</head>
<body>
    
</body>
<script type="text/javascript" >

 var arr = [1,2,3];
 var arr2=[];
 // 这种情况的赋值是把指针指向同一个内存,而不是复制过去,所以arr2push一个值的时候arr显示的结果和arr2一样
 //  arr2 =arr;
 // 改变这种情况
for (var i = 0; i < arr.length; i++) {
     arr2.push(arr[i])
};
 arr2.push(4)
console.log(arr)
console.log(arr2)

</script>
</html>
原文地址:https://www.cnblogs.com/Model-Zachary/p/7435156.html