Rumah > hujung hadapan web > tutorial js > Kunci Objek Dipetik lwn. Tidak Dipetik dalam JavaScript: Apakah Perbezaan Semantik?

Kunci Objek Dipetik lwn. Tidak Dipetik dalam JavaScript: Apakah Perbezaan Semantik?

Patricia Arquette
Lepaskan: 2025-01-04 08:35:34
asal
901 orang telah melayarinya

Quoted vs. Unquoted Object Keys in JavaScript: What's the Semantic Difference?

Petikan dalam Kekunci Objek: Perbezaan dalam Semantik?

Dalam JavaScript, sifat objek boleh ditakrifkan menggunakan kekunci dengan atau tanpa petikan. Walaupun ini mungkin kelihatan seperti perbezaan kecil, ia memperkenalkan perubahan halus dalam gelagat akses harta tanah.

Hartanah dengan Petikan lwn. Tanpa Petikan

  • Dengan petikan: Apabila kunci disertakan dalam petikan (kedua-dua tunggal atau berganda), ia menjadi rentetan. Ini bermakna akses sifat dengan tatatanda titik (cth., obj.foo) dan notasi kurungan (cth., obj["foo"]) akan berkelakuan sama.
  • Tanpa petikan: Jika kunci tidak disertakan dalam petikan, ia menjadi pengecam. Ini bermakna akses sifat dengan tatatanda titik berfungsi hanya untuk pengecam JavaScript yang sah. Jika kunci mengandungi aksara yang tidak dibenarkan dalam pengecam (cth., "-", "&", "%"), notasi kurungan mesti digunakan.

Contoh

Pertimbangkan contoh berikut:

obj1 = {'foo': 'bar'};
obj2 = {foo: 'bar'};
Salin selepas log masuk

Dalam kes ini, kedua-dua obj1 dan obj2 mempunyai pasangan nilai kunci yang sama, tetapi sifat boleh diakses secara berbeza:

console.log(obj1.foo); // 'bar'
console.log(obj2.foo); // ReferenceError: foo is not defined
console.log(obj2['foo']); // 'bar'
Salin selepas log masuk

Seperti yang anda lihat, obj2 tidak boleh diakses menggunakan tatatanda titik kerana kunci "foo" bukan pengecam JavaScript yang sah. Sebaliknya, notasi kurungan mesti digunakan.

Nota:

Walaupun tiada perbezaan yang ketara dalam fungsi antara menggunakan petikan atau tidak, format pertukaran data JSON memerlukan petikan berganda sekitar kunci harta benda. Jika anda bercadang untuk menukar data dalam format JSON, adalah disyorkan untuk sentiasa menggunakan petikan di sekitar kunci objek.

Atas ialah kandungan terperinci Kunci Objek Dipetik lwn. Tidak Dipetik dalam JavaScript: Apakah Perbezaan Semantik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan