JSON.stringify()
Метод JSON.stringify()
преобразует значение JavaScript в строку JSON, возможно с заменой значений, если указана функция замены, или с включением только определённых свойств, если указан массив замены.
Синтаксис
JSON.stringify(value[, replacer[, space]])
Параметры
value
- значение, преобразуемое в строку JSON.
replacer
- необязательный; если является функцией, преобразует значения и свойства по ходу их преобразования в строку; если является массивом, определяет набор свойств, включаемых в объект в окончательной строке.
space
- необязательный; делает результат красиво отформатированным (расставляя пробелы).
Описание
МетодJSON.stringify()
преобразует значение в представляющую его нотацию JSON со следующими оговорками:
- Порядок преобразования в строку свойств объектов, не являющихся массивами, не гарантируется. Не полагайтесь на порядок свойств во время преобразования.
- Объекты
Boolean
,Number
иString
преобразуются в соответствующие примитивные значения, в соответствии с традиционным соглашением о семантике преобразований. - Значение
undefined
, функция или символ, встреченные во время преобразования, будут либо опущены (если они найдены в объекте), либо превращены вnull
(если они найдены в массиве). - Все свойства, имеющие ключ в виде символа, будут полностью проигнорированы, даже при использовании функции
replacer
.
Примеры
JSON.stringify({}); // '{}'
JSON.stringify(true); // 'true'
JSON.stringify('foo'); // '"foo"'
JSON.stringify([1, 'false', false]); // '[1,"false",false]'
JSON.stringify({ x: 5 }); // '{"x":5}'
JSON.stringify({ x: 5, y: 6 });
// '{"x":5,"y":6}' or '{"y":6,"x":5}'
JSON.stringify([new Number(1), new String('false'), new Boolean(false)]);
// '[1,"false",false]'