let a = {n:1};
var b = a;
a.x = a = {n:2}
console.log(a.x)
console.log(b.x)
只说一点 再连等赋值时它们的引用都是暂时保持不变的,等到最后再一起变
从后往前运行三连等代码,a指向{n:2} (但是并没有成功执行),此时a.x 要指向{n:2}注意此时a的ip指向还是原来的ip也就是{n:1}也就是b,所以
第一个时undefined
第二个时{n:2}
2023-10-22 09:54:34
let a = {n:1};
var b = a;
a.x = a = {n:2}
console.log(a.x)
console.log(b.x)
只说一点 再连等赋值时它们的引用都是暂时保持不变的,等到最后再一起变
从后往前运行三连等代码,a指向{n:2} (但是并没有成功执行),此时a.x 要指向{n:2}注意此时a的ip指向还是原来的ip也就是{n:1}也就是b,所以
第一个时undefined
第二个时{n:2}