var a = [],b = [],c = [{}];
b = a;
a = c;
a.push("asd");
console.log("a : " ,a);
console.log("b : " ,b );
在此代码中,为什么b与?
不同我希望b引用一个。
但是,如果a指的是c,则b不再指的是。
答案 0 :(得分:0)
b
指的是最初分配给a
的内容,但由于您在代码中稍后将a
分配给c
,因此它不是更长的时间是a === b
。
在这个例子中你的问题可能更清楚:
var a = ['Originally a']
var b = ['Originally b']
var c = ['Originally c', {}]
b = a
a = c
a.push('asd')
console.log('a = ', a)
console.log('b = ', b)
console.log('c = ', c)