jQuery.parseJSON('{"name":"John"}')
convertit la représentation de chaîne en objet, mais je veux l'inverse. L'objet doit être converti en chaîne JSON J'ai un lien http://www.devcurry.com/2010/03/convert-javascript-object-to-json.html mais il faut json2 .js jQuery a-t-il une méthode native pour le faire?
jQuery effectue seulement quelques vérifications sur les expressions rationnelles avant d'appeler la méthode de navigateur natif window.JSON.parse()
. Si ce n'est pas disponible, il utilise eval()
ou plus exactement new Function()
pour créer un objet Javascript.
L'opposé de JSON.parse()
est JSON.stringify()
, qui sérialise un objet Javascript dans une chaîne. jQuery n'a pas de fonctionnalité propre pour cela, vous devez utiliser la version intégrée du navigateur ou json2.js
de http://www.json.org
JSON.stringify()
est disponible dans tous les principaux navigateurs, mais pour être compatible avec les anciens navigateurs, vous avez toujours besoin de cette solution de repli.
Object.toSource () est également utile pour le débogage, car vous souhaitez afficher l'objet et ses propriétés à des fins de débogage. Il s’agit d’une fonction Javascript générique (pas de jQuery), mais elle ne fonctionne que dans les navigateurs "modernes".
Convertir un objet JavaScript en données json
$("form").submit(function(event){
event.preventDefault();
var formData = $("form").serializeArray(); // Create array of object
var jsonConvertedData = JSON.stringify(formData); // Convert to json
consol.log(jsonConvertedData);
});
Vous pouvez valider les données JSON en utilisant http://jsonlint.com
Vous pouvez utiliser l'excellent plugin jquery-Json:
http://code.google.com/p/jquery-json/
Facilite la conversion vers et à partir d'objets Json.