[Objek Objek] di sini diperoleh kerana penukaran jenis tersirat myObject dalam langkah ini myObject[myObject] = "foo";, jadi di sini [Objek objek] hanyalah rentetan yang ditukar, tetapi nilai 'foo' disimpan dalam objek dengan '[objek Objek]' sebagai kunci!
Ini ialah penukaran tersirat masalah nama kunci objek. Ambil contoh ini, dijelaskan dalam bahasa vernakular:
Terdapat objek A, dan saya ingin memasukkan objek B sebagai nama kunci objek A, tetapi kerana semua nama kunci objek adalah rentetan, objek B akan memanggil kaedah toString() dan menukarnya kepada rentetan "[objek objek]" untuk menyimpan data sebagai nama kunci objek A Data dalam contoh ialah rentetan "foo" ini.
Satu lagi perkara yang memerlukan perhatian khusus ialah: Objek A dan objek B dalam soalan anda adalah sama, yang sangat mengelirukan, jadi saya mengisytiharkan mykey baru untuk membezakannya.
var myObject = {};
var myKey={};
myObject[myKey]="foo";
console.log("[object Object]"===myKey.toString());//true
Hasil cetakan adalah benar, yang membuktikan bahawa "[objek Objek]" tidak sama dengan {}, tetapi sama dengan rentetan yang dikembalikan oleh objek selepas melepasi kaedah toString()
Tiga baris kod di atas membuktikan sekali lagi: "[objek Objek]" adalah sama dengan rentetan yang dikembalikan oleh objek selepas melepasi kaedah toString()
[Objek Objek] di sini diperoleh kerana penukaran jenis tersirat myObject dalam langkah ini
myObject[myObject] = "foo";
, jadi di sini [Objek objek] hanyalah rentetan yang ditukar, tetapi nilai 'foo' disimpan dalam objek dengan '[objek Objek]' sebagai kunci!Ini ialah penukaran tersirat masalah nama kunci objek.
Ambil contoh ini, dijelaskan dalam bahasa vernakular:
Terdapat objek A, dan saya ingin memasukkan objek B sebagai nama kunci objek A, tetapi kerana semua nama kunci objek adalah rentetan, objek B akan memanggil kaedah toString() dan menukarnya kepada rentetan "[objek objek]" untuk menyimpan data sebagai nama kunci objek A Data dalam contoh ialah rentetan "foo" ini.
Satu lagi perkara yang memerlukan perhatian khusus ialah:
Objek A dan objek B dalam soalan anda adalah sama, yang sangat mengelirukan, jadi saya mengisytiharkan mykey baru untuk membezakannya.
Nilai kunci akan ditukar secara automatik kepada rentetan