web-dev-qa-db-fra.com

Convertir l'objet en chaîne JSON

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?

122
Kuttan Sujith

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.

183
jAndy

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".

12
Excalibur

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

4
Subroto Biswas

Vous pouvez utiliser l'excellent plugin jquery-Json:

http://code.google.com/p/jquery-json/

Facilite la conversion vers et à partir d'objets Json.

2
George Filippakos