JavaScriptのオブジェクトリファレンスとコピー


オブジェクトのような非原始的なデータ型は、参照によって記憶されて、コピーされることができます.
以下の例を参照ください.
プリミティブデータ型
const name = 'Bello';
const myName = name;

console.log(myName); // Bello
非原始データ型
const obj = { name: 'Bello', favNum: 9 }; 
const person = obj; // copy the reference

console.log(person); // { name: 'Bello', favNum: 9 }
console.log(person.favNum); // 9

オブジェクト{ name: 'Bello', favNum: 9 } が変数obj そのアドレスをメモリに格納する.考えるobj それのアドレスで紙のように.即ち、person オブジェクトへの参照をコピーしますobj .
オブジェクトの値へのアクセスperson.favNum ) アドレスを探すobj 通しperson

The object obj itself is not duplicated


オブジェクトの内容を変更することもできます.
const obj = { name: 'Bello', favNum: 9 }; 
const person= obj; // copy the reference

console.log(person); // { name: 'Bello', favNum: 9 }

person.favNum = 69;

console.log(person); // { name: 'Bello', favNum: 69 }

参照による比較


つのオブジェクトは同じオブジェクトである場合に限り、等しいです.
const a = {};
const b = a; // copy the reference

console.log(a == b); // true, both variables reference the same object
console.log(a === b); // true
以来a and b 同じオブジェクトを参照します.
ここでは、2つの独立したオブジェクトは等しくはありません.
const a = {};
const b = {}; // two independent objects

console.log(a == b); // false
ハッピーコーディング!

TechStackメディア

  • Aを買う.com ドメイン名を$ 9.99として低くします.
  • Aを買う.net ドメイン名は12.99ドルと低くなります.
  • 安いドメイン名を$ 3として低くしてください.
  • 簡単にウェブサイトをビルドします.