内存堆栈问题

var a = {
n: 1
};
var b = a;
a.x = a = {
n: 2
};
console.log(a.x);
console.log(b);

注意.x的优先级,开辟出{n:2}的堆空间,a.x指向这个新的堆空间

然后a的指针改变,指向新的堆空间

所以a.x为undefined, b指向原来的堆空间

原文地址:https://www.cnblogs.com/zhx119/p/14263659.html