Método parse() de JSON de JavaScript

Definición y uso

El método JSON.parse() analiza la cadena y devuelve un objeto JavaScript.

La cadena debe estar escrita en formato JSON.

El método JSON.parse() puede elegir usar una función para convertir el resultado.

Ejemplo

Ejemplo 1

Analizar una cadena (escrita en formato JSON) y devolver un objeto JavaScript:

var obj = JSON.parse('{"firstName":"Bill", "lastName":"Gates"}');

Pruebe usted mismo

Ejemplo 2

Cómo usar la función reviver:

/* Reemplazar el valor de "city" en mayúsculas: */
var text = '{ "name":"Bill", "age":"19", "city":"Seattle"}';
var obj = JSON.parse(text, function (key, value) {
  if (key == "city") {
    devolver valor.toUpperCase();
  } else {
    valor devuelto;
  }
});
document.getElementById("demo").innerHTML = obj.name + ", " + obj.city;

Pruebe usted mismo

Ejemplo 3

Analizar JSON recibido del servidor:

var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
  if (this.readyState == 4 && this.status == 200) {
    var myObj = JSON.parse(this.responseText);
    document.getElementById("demo").innerHTML = myObj.name;
  }
};
xmlhttp.open("GET", "json_demo.txt", true);
xmlhttp.send();

Pruebe usted mismo

Consulte json_demo.txt

Sintaxis

JSON.parse(cadena, function)

Valor del parámetro

Parámetros Descripción
cadena Obligatorio. Cadena escrita en formato JSON.
función reviver

Opcional. Función para convertir el resultado. Llama a esta función para cada elemento. Cualquier objeto anidado se convierte antes que el objeto padre.

Si esta función devuelve un valor válido, reemplaza el valor del elemento con el valor convertido.

Si esta función devuelve undefined, elimina este elemento.

Detalles técnicos

Valor devuelto: Objeto JSON, o número.
Versión de JavaScript: ECMAScript 5

Soporte del navegador

Los números en la tabla indican la versión del navegador que admite completamente este método.

Métodos Chrome IE Firefox Safari Opera
parse() 4.0 8.0 3.5 4.0 11.5

Páginas relacionadas

Tutoriales de JSON:Introducción a JSON