let's see an example:
let object = {
a: {
b: 1
}
};
Now I want to modify the object.a
from x
:
s.1)
let x = object.a;
x = 2;
console.log(object);
result:
[object Object] {
a: [object Object] {
b: 1
}
}
s.2
let x = object.a;
x = { b: 2 };
console.log(object);
result:
[object Object] {
a: [object Object] {
b: 1
}
}
s.3
let x = object.a;
x.b = 2;
x.c = 2;
console.log(object);
result:
[object Object] {
a: [object Object] {
b: 2,
c: 2
}
}
Why s.1 and s.2 fail?