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!