Rumah > hujung hadapan web > tutorial js > Bagaimanakah Saya Mengakses Sifat Objek JSON yang Mengandungi Sempang?

Bagaimanakah Saya Mengakses Sifat Objek JSON yang Mengandungi Sempang?

Susan Sarandon
Lepaskan: 2024-11-26 19:29:13
asal
754 orang telah melayarinya

How Do I Access JSON Object Properties Containing Dashes?

Mengakses JSON Object Properties dengan Dash Characters

Isu ini timbul apabila cuba mendapatkan semula nilai daripada objek JSON di mana kunci sifat mengandungi aksara sempang (-). Sebagai contoh, pertimbangkan JSON berikut:

{
"profile-id":1234, "user_id":6789
}
Salin selepas log masuk

Jika kami cuba mengakses sifat "profile-id" menggunakan notasi titik (iaitu, jsonObj.profile-id), kami menghadapi ralat "ReferenceError: ' id' tidak ditakrifkan."

Mengapa Notasi Titik Gagal

Dalam JavaScript, kunci sifat dalam objek hanya boleh mengandungi aksara tertentu, termasuk huruf, nombor dan garis bawah. Dash bukan salah satu daripada aksara yang dibenarkan ini. Notasi titik menukarkan kunci sifat secara automatik dengan sempang kepada ungkapan penolakan (iaitu, jsonObj.profile - id).

Penyelesaian: Menggunakan Notasi Kurungan

Untuk mengatasi had ini, kita boleh menggunakan kurungan notasi untuk mengakses sifat objek. Notasi kurungan membolehkan kami menentukan kunci sifat sebagai rentetan. Untuk mengakses sifat "id-profil", kita boleh menggunakan sintaks berikut:

jsonObj["profile-id"]
Salin selepas log masuk

Contoh

Berikut ialah contoh yang menunjukkan cara menggunakan notasi kurungan untuk mengakses sifat dengan aksara sempang :

const jsonObj = {
  "profile-id": 1234,
  "user_id": 6789,
};

console.log(jsonObj["profile-id"]); // Output: 1234
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Saya Mengakses Sifat Objek JSON yang Mengandungi Sempang?. 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