JSON
JSON (JavaScript Object Notation)
Легковесный текстовый формат обмена данными, использующий удобочитаемые пары «ключ-значение» и упорядоченные списки для представления структурированных данных, являющийся стандартным форматом для веб-API и конфигурационных файлов.
Техническая деталь
JSON (RFC 8259) поддерживает шесть типов данных: строка (Unicode в двойных кавычках), число (целое или с плавающей запятой), логическое значение (true/false), null, объект (неупорядоченная карта «ключ-значение») и массив (упорядоченный список). Он не поддерживает комментарии, завершающие запятые, одинарные кавычки, undefined, даты или двоичные данные нативно. JSON5 и JSONC расширяют формат комментариями и ослабленным синтаксисом. Парсинг выполняется через JSON.parse() в JavaScript и эквивалентные функции стандартных библиотек на всех основных языках. Потоковые парсеры (в стиле SAX) обрабатывают файлы, слишком большие для размещения в памяти.
Пример
```javascript
// JSON parse with reviver function
const data = JSON.parse(text, (key, val) => {
if (key === 'date') return new Date(val);
return val;
});
// JSON stringify with replacer and indentation
JSON.stringify(data, ['name', 'email'], 2);
```