Введение в формат JSON в JavaScript

Иногда бывает нужно преобразовать некую структуру данных, например, массив или объект, в строку. Это может понадобится, например, чтобы отправить эту структуру через интернет или сохранить в какое-то хранилище.

Для этого в JavaScript был придуман специальный формат JSON.

Формат JSON может содержать одну из двух структур: или массив, или объект с парами ключ-значение. Массивы и объекты строятся так же, как и в JavaScript, но имеют ограничение: все строки и строковые ключи объектов должны быть взяты в двойные кавычки.

Давайте, например, сделаем строку, содержащую массив в формате JSON:

javascriptlet json = '[1, 2, 3, 4, 5, "a", "b"]';

А теперь сделаем строку, содержащую объект в формате JSON:

javascriptlet json = `{
  "a": "aaa",
  "b": "bbb",
  "c": "ccc",
  "111": "ddd"
}`;

Можно комбинировать эти структуры в любом порядке:

javascriptlet json = `[
  {
    "a": "aaa",
    "b": "bbb"
  },
  {
    "c": "ccc",
    "d": "ddd"
  }
]`;

В отличие от структур JavaScript, в JSON не разрешены запятые после последних элементов массивов и объектов:

javascriptlet json = '[1, 2, 3, 4, 5,]'; // неверно
let json = '[1, 2, 3, 4, 5]';  // верно

Кроме чисел и строк в качестве элементов могут выступать также значения true, false и null:

javascriptlet json = '[null, true, false]';
Задание 1

Дан массив:

javascriptlet arr = [1, 2, 3, 'a', 'b', 'c'];

Вручную преобразуйте этот массив в строку в формате JSON.

Задание 2

Дан объект:

javascriptlet obj = {
  a: 1,
  b: 2,
  c: 'eee',
  d: true,
};

Вручную преобразуйте этот объект в строку в формате JSON.

Задание 3

Дан объект:

javascriptlet obj = {
  a: ['a', 'b', 'c',],
  b: '111',
  c: 'eee',
};

Вручную преобразуйте этот объект в строку в формате JSON.