オブジェクトを作成して配列にプッシュすると、参照または値によって格納されますか?
私は次のことが起こっているのを見ます:
var abc = { a: 10, b: 20};
var def = [];
def.push(abc);
abc.a = 100;
def[0].a; // outputs 100!
// if I do this
abc = { a: 10000, b: 20000 };
def[0].a; // still 100, no change this time
コンソールからの画像:
記号を使って に=
オブジェクトを代入すると、配列内の がabc
指す参照も変わるはずですよね。上記では、値または参照によって何と呼んでいますか?abc
def
abc
値を指す参照のように理解しました。記号を使用しない限り、=
記号はそれを指し続けます。ガイドしてください。