JSON

1. Введение

JSON — современный формат хранения и передачи данных.

Объектоподобный синтаксис JSON очень удобен. Именно в этом формате данные будут приходить и отправляться на сервер, сохраняться в локальном хранилище и т. п.

JSON можно рассматривать как строковое представление JavaScript-объекта. Поддерживает следующие значения: string, number, object, array, boolean, null.

Ниже приведен пример JSON-файла. Он очень похож на объекты, за исключением того, что ключи и все кроме: чисел, булей, null, литерала массива и объекта, всегда должны быть в двойных кавычках.

{
  "name": "Josh",
  "weight": 175,
  "age": 30,
  "eyecolor": "brown",
  "isHappy": true,
  "cars": ["Chevy", "Honda"],
  "favoriteBook": {
    "title": "When the Fire Nation Attacked",
    "author": "Nickelodeon",
    "released": "02-21-2005"
  }
}
Copy

Javascript и JSON отлично работают вместе благодаря методам JSON.stringify() и JSON.parse(). Они преобразуют JS-объект в JSON и обратно, и независимо от того, что у вас есть, можно легко получить обратное.

Онлайн JSON-валидатор

2. Метод JSON.stringify(obj)

Чтобы использовать JSON.stringify(), просто передайте JavaScript-объект, который необходимо преобразовать в JSON.

const dog = {
  name: 'Mango',
  age: 3,
  isHappy: true,
};

const dogJSON = JSON.stringify(dog);
console.log(dogJSON); // {"name":"Mango","age":3,"isHappy":true}
Copy

JSON.stringify(dog) взял объект dog и преобразовал его в строку. Эта строка теперь валидный JSON и может быть сохранена в файл или передана по сети.

3. Метод JSON.parse(string)

Чтобы получить JavaScript-объект из JSON, вы должны разобрать (распарсить) его, операция обратная stringify.

const json = '{"name":"Mango","age":3,"isHappy":true}';

const dog = JSON.parse(json);
console.log(dog); // {name: "Mango", age: 3, isHappy: true}
Copy

Теперь, когда dog является обычным JavaScript-объектом, его можно использовать.

Last updated