小编use*_*844的帖子

为什么JavaScript通过引用传递?

var a = [3, 4, 5];
var b = [6, 7, 8];

function why() {
    b = a;
    b[0] = 1;
    alert(a[0] + '    ' + b[0]);
}
why();
Run Code Online (Sandbox Code Playgroud)

结果是a[0]=1, b[0]=1;.好像JavaScript正在通过引用传递?

但在这种情况下:

var a = [3, 4, 5];
var b = [6, 7, 8];

function why() {
    b = a;
    b = [1, 2, 3];
    alert(a + '    ' + b);
}
why();
Run Code Online (Sandbox Code Playgroud)

结果是a=[3,4,5]b = [1,2,3].它为什么通过价值?如何避免通过引用传递?

javascript

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

标签 统计

javascript ×1