Movatterモバイル変換


[0]ホーム

URL:


MDN Web Docs

Эта страница была переведена с английского языка силами сообщества. Вы тоже можете внести свой вклад, присоединившись к русскоязычному сообществу MDN Web Docs.

JSON.parse()

BaselineWidely available *

Сводка

МетодJSON.parse() разбирает строку JSON, возможно с преобразованием получаемого в процессе разбора значения.

Синтаксис

JSON.parse(text[, reviver])

Параметры

text

Разбираемая строка JSON. Смотрите документацию по объектуJSON для описания синтаксиса JSON.

reviverНеобязательный

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

Возвращаемое значение

Возвращает объектObject, соответствующий переданной строке JSONtext.

Выбрасываемые исключения

Выбрасывает исключениеSyntaxError, если разбираемая строка не является правильным JSON.

Примеры

Пример: использование методаJSON.parse()

js
JSON.parse("{}"); // {}JSON.parse("true"); // trueJSON.parse('"foo"'); // "foo"JSON.parse('[1, 5, "false"]'); // [1, 5, "false"]JSON.parse("null"); // null

Пример: использование параметраreviver

Если определён параметрreviver, значение, вычисляемое при разборе строки, будетпреобразовано перед его возвратом. В частности, вычисленное значение и все его свойства (начиная с самых вложенных свойств и кончая самим значением), каждое проходят через функциюreviver, которая вызывается с контекстомthis, содержащим объект в виде обрабатываемого свойства, и с аргументами: именем свойства в виде строки и значением свойства. Если функцияreviver вернётundefined (либо вообще не вернёт никакого значения, например, если выполнение достигнет конца функции), свойство будет удалено из объекта. В противном случае свойство будет переопределено возвращаемым значением.

В конечном итоге, функцияreviver вызывается с пустой строкой и самым верхним значением, чтобы обеспечить преобразование самого верхнего значения. Убедитесь, что вы правильно обрабатываете этот случай — обычно для этого нужно просто вернуть само значение — или методJSON.parse() вернётundefined.

js
JSON.parse('{"p": 5}', function (k, v) {  if (k === "") {    return v;  } // самое верхнее значение - возвращаем его  return v * 2; // иначе возвращаем v * 2.}); // { p: 10 }JSON.parse('{"1": 1, "2": 2, "3": {"4": 4, "5": {"6": 6}}}', function (k, v) {  console.log(k); // пишем имя текущего свойства, последним именем будет ""  return v; // возвращаем неизменённое значение свойства});// 1// 2// 4// 6// 5// 3// ""

Спецификации

Specification
ECMAScript® 2026 Language Specification
# sec-json.parse

Совместимость с браузерами

Смотрите также

Help improve MDN

Learn how to contribute.

This page was last modified on byMDN contributors.


[8]ページ先頭

©2009-2025 Movatter.jp