Petikan Tunggal lwn. Berganda dalam jQuery.parseJSON
Dalam JavaScript, kaedah jQuery.parseJSON menukar rentetan JSON kepada objek JavaScript. Apabila bekerja dengan rentetan JSON, adalah penting untuk memahami perbezaan antara menggunakan petikan tunggal dan berganda.
Isunya
Coretan kod di bawah berfungsi dengan jayanya:
var obj1 = jQuery.parseJSON('{"orderedList": "true"}');
Walau bagaimanapun, kod berikut gagal menghuraikan rentetan JSON:
var obj2 = jQuery.parseJSON("{'orderedList': 'true'}");
Sebabnya
Percanggahan timbul daripada pengendalian yang berbeza bagi petikan berganda dalam sintaks JSON Menurut standard JSON, petikan berganda dianggap sebagai standard untuk pembatas rentetan, manakala petikan tunggal tidak.
Sintaks JSON
JSON. sintaks menyatakan bahawa:
A value can be a string in double quotes, or a number, or true or false or null, or an object or an array. These structures can be nested.
Oleh itu, JavaScript boleh menghuraikan petikan berganda dengan betul apabila menggunakannya dalam rentetan JSON. Petikan tunggal tidak dianggap sebagai pembatas rentetan yang sah, menyebabkan jQuery.parseJSON gagal menukar rentetan JSON dengan betul.
Kemas kini
Perlu diperhatikan bahawa isu yang sama telah timbul dalam perbincangan komuniti jQuery mengenai penggunaan petikan tunggal dalam respons JSON. Satu cara untuk menyelesaikan masalah ini ialah memastikan anda sentiasa menggunakan petikan berganda dalam rentetan JSON.
Atas ialah kandungan terperinci Mengapa Petikan Berganda dan Petikan Tunggal Bertindak Berbeza dalam jQuery.parseJSON?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!