यहाँ एक उद्धरण from jQuery 1.9.1 है:
parseJSON: function(data) {
// Attempt to parse using the native JSON parser first
if (window.JSON && window.JSON.parse) {
return window.JSON.parse(data);
}
if (data === null) {
return data;
}
if (typeof data === "string") {
// Make sure leading/trailing whitespace is removed (IE can't handle it)
data = jQuery.trim(data);
if (data) {
// Make sure the incoming data is actual JSON
// Logic borrowed from http://json.org/json2.js
if (rvalidchars.test(data.replace(rvalidescape, "@")
.replace(rvalidtokens, "]")
.replace(rvalidbraces, ""))) {
return (new Function("return " + data))();
}
}
}
jQuery.error("Invalid JSON: " + data);
},
अगर यह उपलब्ध हो आप देख सकते हैं, jQuery देशी JSON.parse
विधि का उपयोग करेगा और अन्यथा यह new Function
साथ डेटा का मूल्यांकन करने के लिए है, जो एक तरह से है की कोशिश करेंगे eval
की तरह।
तो हाँ, आप निश्चित रूप से jQuery.parseJSON
उपयोग करना चाहिए।
मुझे लगता है कि पुराने ब्राउज़र में JSON.parse उपलब्ध नहीं है। गति के मामले में वे समान होना चाहिए, JSON.parse थोड़ा और तेज़ होना चाहिए (मुझे लगता है कि jQuery नए ब्राउज़र में JSON.parse का उपयोग करता है)। –