小编use*_*225的帖子

为什么"a.push(b)"在我的示例代码中改变了"b"?

我正在尝试将值推送到数组,但这会将值添加到两个数组ab.如何确保b不修改数组?

var a=[[1]];
var b= [2];
document.getElementById("1").innerHTML="a[1] "+a[1];
document.getElementById("2").innerHTML="b "+b;

a.push(b);
document.getElementById("3").innerHTML="a[1] "+a[1];
document.getElementById("4").innerHTML="b "+b;

a[1].push([3]);
document.getElementById("5").innerHTML="a[1] "+a[1];
document.getElementById("6").innerHTML="b "+b+" < why did this value changed?";
Run Code Online (Sandbox Code Playgroud)
<div id="1"></div>
<div id="2"></div><br />
<div id="3"></div>
<div id="4"></div><br />
<div id="5"></div>
<div id="6"></div><br />
Run Code Online (Sandbox Code Playgroud)

javascript arrays

5
推荐指数
1
解决办法
92
查看次数

标签 统计

arrays ×1

javascript ×1