Serializar un objeto a JSON


Respuestas:



52

Descargar https://github.com/douglascrockford/JSON-js/blob/master/json2.js, incluirlo y hacer

var json_data = JSON.stringify(obj);

1
¿Debería realmente incluir "json2.js"? Parece que funciona sin él.
Pavel Alexeev

32
@PavelAlexeev No, no necesita incluir json2.jsmás, a menos que esté apuntando a navegadores muy antiguos: los navegadores modernos incluyen una implementación nativa del JSONobjeto. Lo bueno json2.jses que solo se activará si no se encuentra ningún objeto nativo. Consulte [ stackoverflow.com/questions/891299/… para obtener un desglose detallado del soporte del navegador.
Edurne Pascual

4

Solo para mantenerlo compatible con versiones anteriores, cargo la biblioteca JSON de Crockfords desde Cloudflare CDN si no se proporciona soporte nativo de JSON (por simplicidad usando jQuery):

function winHasJSON(){
  json_data = JSON.stringify(obj);
  // ... (do stuff with json_data)
}
if(typeof JSON === 'object' && typeof JSON.stringify === 'function'){
  winHasJSON();
} else {
  $.getScript('//cdnjs.cloudflare.com/ajax/libs/json2/20121008/json2.min.js', winHasJSON)
}
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.