update func

This commit is contained in:
2025-03-05 12:33:59 +03:00
parent e60ec041ae
commit 31caa0e6de
15 changed files with 539 additions and 1 deletions

View File

@@ -0,0 +1,62 @@
---
sidebar_position: 11
---
# Формат JSON
- JSON это формат данных, который имеет собственный независимый стандарт и библиотеки для большинства языков программирования.
- JSON поддерживает простые объекты, массивы, строки, числа, логические значения и null.
- JavaScript предоставляет методы JSON.stringify для сериализации в JSON и JSON.parse для чтения из JSON.
- Оба метода поддерживают функции преобразования для интеллектуального чтения/записи.
- Если объект имеет метод toJSON, то он вызывается через JSON.stringify.
JavaScript предоставляет методы:
- JSON.stringify для преобразования объектов в JSON.
- JSON.parse для преобразования JSON обратно в объект.
JSON поддерживает следующие типы данных:
- Объекты \{ ... }
- Массивы [ ... ]
- Примитивы:
- строки,
- числа,
- логические значения true/false,
- null.
## JSON.stringify
JSON.stringify пропускает некоторые специфические свойства объектов JavaScript
- Свойства-функции (методы).
- Символьные ключи и значения.
- Свойства, содержащие undefined.
💥 ***Важное ограничение: не должно быть циклических ссылок.***
## Исключаем и преобразуем: replacer
- **value** Значение для кодирования.
- **replacer** Массив свойств для кодирования или функция соответствия function(key, value).
- **space** Дополнительное пространство (отступы), используемое для форматирования.
В большинстве случаев JSON.stringify используется только с первым аргументом. Но если нам нужно настроить процесс замены, например, отфильтровать циклические ссылки, то можно использовать второй аргумент JSON.stringify.
```js
let json = JSON.stringify(value[, replacer, space])
```
## Форматирование: space
Третий аргумент в JSON.stringify(value, replacer, space) это количество пробелов, используемых для удобного форматирования.
## Пользовательский «toJSON»
Как и toString для преобразования строк, объект может предоставлять метод toJSON для преобразования в JSON. JSON.stringify автоматически вызывает его, если он есть.
## JSON.parse
Чтобы декодировать JSON-строку, нам нужен другой метод с именем JSON.parse.
```js
let value = JSON.parse(str[, reviver]);
```
- **str** JSON для преобразования в объект.
- **reviver** Необязательная функция, которая будет вызываться для каждой пары (ключ, значение) и может преобразовывать значение.
Кроме того, JSON не поддерживает комментарии.