Метод parse() JSON в JavaScript

Определение и использование

Метод JSON.parse() парсит строку и возвращает JavaScript объект.

Эта строка должна быть написана в формате JSON.

Метод JSON.parse() может выбирать функцию для преобразования результата.

Пример

Пример 1

Парсинг строки (написанной в формате JSON) и возврат JavaScript объекта:

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

Попробуйте сами

Пример 2

Как использовать функцию reviver:

/* Замените значение "city" на верхний регистр: */
var text = '{ "name":"Bill", "age":"19", "city":"Seattle"}';
var obj = JSON.parse(text, function (key, value) {
  if (key == "city") {
    возврат значений в верхнем регистре;
  } else {
    возврат значений;
  }
});
document.getElementById("demo").innerHTML = obj.name + ", " + obj.city;

Попробуйте сами

Пример 3

Парсинг JSON, полученного от сервера:

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();

Попробуйте сами

Пожалуйста, посмотрите json_demo.txt

Грамматика

JSON.parse(строка, функция)

Значение параметра

Параметр Описание
строка Обязателен. Строка, написанная в формате JSON.
функция reviver

Опционально. Функция для преобразования результатов. Вызовите эту функцию для каждого элемента. Любые вложенные объекты преобразуются до родительского объекта.

Если функция возвращает действительное значение, то замените значение элемента преобразованным значением.

Если функция возвращает undefined, то удалите этот элемент.

Технические детали

Возврат значений: Объект JSON или число.
Версия JavaScript: ECMAScript 5

Поддержка браузера

Числа в таблице указывают на首个 браузер, поддерживающий этот метод полностью.

Метод Chrome IE Firefox Safari Opera
parse() 4.0 8.0 3.5 4.0 11.5

См. также

Урок JSON:Введение в JSON