下面的js代码是怎么回事?
let testObj={x:[1,2,3],y:[1,2,3]};
console.log(testObj);
testObj.x=[1,2,2]
testObj.y=[1,1,1]
console.log(testObj);
输出
{x: Array(3), y: Array(3)}
x: (3) [1, 2, 2]
y: (3) [1, 1, 1]
__proto__: Object
{x: Array(3), y: Array(3)}
x: (3) [1, 2, 2]
y: (3) [1, 1, 1]
__proto__: Object
当然,在我重新分配testObj
?的属性之前,第一个 console.log 应该已经运行了。怎么了?