jueves, 1 de agosto de 2019

Uso de JSON.stringify y JSON.parser

Desarrollando una pequeña aplicación de un formulario que recuperaba los datos a través de una función y lo pasaba a otra me encontraba que no podia ver o usar el objeto que tenia. Además, al querer ver los datos con el console log me daba error 

SyntaxError: Unexpected token o in JSON at position 1


y no podia recuperar los datos.


Resulta ser que aplicaba mal el uso de datos las funciones 


JSON.stringify  y JSON.parse



Cuando nosotros usamos JSON.stringify  convertimos al obj JSON en string y,

JSON.parse lo regresa a ser un Object.


por ejemplo, si creas un objeto


var matriz1 = {}; 

matriz1.a = 9

y aplicas 

console.log(matriz1);

obtienes 

[object Object]

pero 

console.log(matriz1.a)

te da 

9

Si aplicas 

console.log(JSON.stringify(matriz1))
imprime
{"a":9}

De tal manera que aplicar un JSON.stringify en un paso previo requiere regresar los datos a su formato de objeto con JSON.parse en un paso futuro para su uso adecuado.


Ahora bien, se puede dar el caso de que los datos que obtienes de algún origen no vengan formateados, entonces, tenemos que convertir en string los datos y luego parsearlos. Por ejemplo:



JSON.parse(JSON.stringify(matriz1))

Espero te sirva la información.

Saludos


No hay comentarios.:

Publicar un comentario