Diferencia entre JSON.stringify y JSON.parse
No sé cuándo utilizar estos dos métodos de análisis.
Después de hacer eco de mis datos json_encoded y recuperarlos a través de ajax, a menudo me siento confundido acerca de cuándo debo usar JSON.stringify y JSON.parse .
Entro [object,object]
en mi console.log cuando se analiza y un objeto JavaScript cuando se encadena.
$.ajax({
url: "demo_test.txt",
success: function(data) {
console.log(JSON.stringify(data))
/* OR */
console.log(JSON.parse(data))
//this is what I am unsure about?
}
});
Aceptado
JSON.stringify
convierte un objeto JavaScript en texto JSON y almacena ese texto JSON en una cadena, por ejemplo:
var my_object = { key_1: "some text", key_2: true, key_3: 5 };
var object_as_string = JSON.stringify(my_object);
// "{"key_1":"some text","key_2":true,"key_3":5}"
typeof(object_as_string);
// "string"
JSON.parse
convierte una cadena de texto JSON en un objeto JavaScript, por ejemplo:
var object_as_string_as_object = JSON.parse(object_as_string);
// {key_1: "some text", key_2: true, key_3: 5}
typeof(object_as_string_as_object);
// "object"
JSON.parse()
es para "analizar" algo que se recibió como JSON.
JSON.stringify()
es crear una cadena JSON a partir de un objeto/matriz.