What actually the difference between this?
This works fine:
var obj1 = jQuery.parseJSON('{"orderedList": "true"}'); document.write("obj1 "+ obj1.orderedList );
but the following does not work:
var obj2 = jQuery.parseJSON("{'orderedList': 'true'}"); document.write("obj2 "+ obj2.orderedList );
Why is that?
Strings in JSON are specified using double quotes, i.e., " . If the strings are enclosed using single quotes, then the JSON is an invalid JSON .
Answer #1:JSON requires double quotes for its strings.
if you want to escape double quote in JSON use \\ to escape it.
That's because double quotes is considered standard while single quote is not. This is not really specific to JQuery, but its about JSON standard. So irrespective of JS toolkit, you should expect same behaviour.
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.
Update
Or perhaps its a duplicate of jQuery single quote in JSON response
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With