Oto fragment z jQuery 1.9.1 :
parseJSON: function( data ) {
if ( window.JSON && window.JSON.parse ) {
return window.JSON.parse( data );
}
if ( data === null ) {
return data;
}
if ( typeof data === "string" ) {
data = jQuery.trim( data );
if ( data ) {
if ( rvalidchars.test( data.replace( rvalidescape, "@" )
.replace( rvalidtokens, "]" )
.replace( rvalidbraces, "")) ) {
return ( new Function( "return " + data ) )();
}
}
}
jQuery.error( "Invalid JSON: " + data );
},
Jak widać, jQuery użyje JSON.parsemetody natywnej , jeśli jest dostępna, aw przeciwnym razie spróbuje oszacować dane new Function, co jest trochę podobne eval.
Więc tak, zdecydowanie powinieneś użyć jQuery.parseJSON.