var foo = {n: 1};
var bar = foo;
foo.x = foo = {n: 2};
console.log(foo.x) // undefined
Ich weiß, dass Variablen Objekte als Referenz speichern. Ist das nicht foo.x nur eine andere Variable? Warum kann es nicht auf die Referenz als das Objekt zeigen?Warum wäre die Eigenschaft eines Objekts undefiniert, wenn es dem Objekt zugewiesen ist?
foo.x ist jetzt foo und foo hat keine Eigenschaft x. –