Rumah >hujung hadapan web >tutorial js >Mengapakah jQuery.parseJSON Membuang \'JSON Tidak Sah\' untuk Petikan Tunggal yang Dilepaskan?

Mengapakah jQuery.parseJSON Membuang \'JSON Tidak Sah\' untuk Petikan Tunggal yang Dilepaskan?

Barbara Streisand
Barbara Streisandasal
2024-10-28 07:02:30385semak imbas

Why Does jQuery.parseJSON Throw

jQuery.parseJSON Menghadapi Ralat "JSON Tidak Sah" Disebabkan Petikan Tunggal yang Melarikan Diri dalam JSON

Apabila menggunakan jQuery.post() untuk mendapatkan semula objek JSON, adalah penting untuk mengelakkan menggunakan aksara petikan tunggal (') dalam nilai rentetan, atau anda mungkin menghadapi ralat semasa menghurai.

Menghuraikan Petikan Tunggal dalam JSON

Mengikut spesifikasi JSON, hanya aksara petikan dua kali boleh melarikan diri dalam rentetan. Aksara petikan tunggal tidak memerlukan pelarian.

Penghuraian JSON jQuery

jQuery cuba menggunakan penghurai JSON asli penyemak imbas atau pustaka json2.js untuk menghuraikan JSON. Malangnya, pelaksanaan ini mematuhi spesifikasi JSON dengan ketat dan tidak menyokong petikan tunggal atau pelolosannya. Oleh itu, jQuery akan melaporkan JSON sebagai tidak sah jika ia mengandungi aksara sedemikian.

Mengendalikan Petikan Tunggal dalam JSON

Untuk mengelakkan isu ini, anda harus menggunakan petikan berganda (") untuk menyertakan nilai rentetan dalam Objek JSON. Ini memastikan bahawa JSON mematuhi spesifikasi sepenuhnya dan boleh dihuraikan dengan jayanya oleh jQuery.

Maklumat Tambahan

Walaupun spesifikasi JSON tidak secara jelas melarang petikan tunggal yang terlepas, sesetengah pelaksanaan boleh memilih untuk menerimanya untuk fleksibiliti yang lebih besar, bagaimanapun, adalah amat disyorkan untuk mematuhi spesifikasi rasmi untuk memastikan kesalingoperasian dan mengelakkan masalah keserasian.

Atas ialah kandungan terperinci Mengapakah jQuery.parseJSON Membuang \'JSON Tidak Sah\' untuk Petikan Tunggal yang Dilepaskan?. 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