Rumah  >  Artikel  >  hujung hadapan web  >  Apakah Takrifan Berbeza JSON yang Sah?

Apakah Takrifan Berbeza JSON yang Sah?

DDD
DDDasal
2024-11-06 22:50:02813semak imbas

What are the Different Definitions of Valid JSON?

Memahami JSON Minimal Sah

Konsep JSON telah dibincangkan secara meluas dalam pelbagai RFC dan spesifikasi. RFC4627 pada mulanya mentakrifkan JSON sebagai sama ada objek bersiri atau tatasusunan. Berdasarkan takrifan ini, hanya {} (objek kosong) dan [] (tatasusunan kosong) layak sebagai rentetan JSON yang sah dan lengkap.

Walau bagaimanapun, ECMA-404 memperkenalkan pindaan yang memperluaskan julat rentetan JSON yang sah. Dengan kemas kini ini, rentetan, nombor, benar, salah, null, {} ( objek kosong) dan [] (tatasusunan kosong) semuanya dianggap rentetan JSON yang sah.

Dalam bidang penyemak imbas web, JSON diseragamkan dalam ES5. ES5 mentakrifkan teks JSON yang sah sama seperti RFC 4627 dengan dua pengecualian. Pertama, pengeluaran JSONText peringkat atas mungkin terdiri daripada mana-mana JSONValue (termasuk rentetan, nombor, boolean dan null) dan bukannya terhad kepada objek atau tatasusunan. Ini bermakna semua nilai JSON diterima dalam penyemak imbas web, walaupun objek JSON yang mendasari mungkin mematuhi RFC 4627.

Perlu ambil perhatian bahawa penghurai yang berbeza mungkin mempunyai tahap sokongan yang berbeza-beza untuk rangkaian penuh rentetan JSON yang sah. Sebagai contoh, Ruby hanya menerima objek dan tatasusunan sebagai akar, manakala PHP secara nyata menyertakan jenis skalar dan NULL dalam keupayaan pengekodan dan penyahkodannya.

Atas ialah kandungan terperinci Apakah Takrifan Berbeza JSON yang Sah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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