JSON - Синтаксис

Синтаксис JSON является подмножеством синтаксиса JavaScript.

Правила синтаксиса JSON

Синтаксис JSON происходит от синтаксиса записи объектов JavaScript:

  • Данные записываются в виде пар "имя/значение"
  • Данные разделяются запятыми
  • В фигурных скобках записываются объекты
  • В квадратных скобках записываются массивы

Данные JSON – Имя и значение

Данные JSON записываются в виде пар "имя/значение".

Пара "имя/значение" состоит из имени поля (в двойных кавычках), за которым ставится двоеточие, за которым идет значение:


"name":"John" 

Внимание! Имена в JSON должны быть заключены в двойные кавычки. Имена в JavaScript нет.

JSON и объекты JavaScript

Формат JSON почти идентичен объектам JavaScript.

В JSON ключи должны быть строками, записанные в двойных кавычках:


{ "name":"John" }

В JavaScript ключи могут быть строками, числами или именами идентификаторов:


{ name:"John" }

Значения в JSON

В JSON значения должны быть одним из следующих типов данных:

  • строка
  • число
  • объект (объект JSON)
  • массив
  • boolean
  • null

В JavaScript значения могут быть любого типа из приведенных выше плюс любым допустимым выражением JavaScript, включая:

  • функция
  • дата
  • undefined

В JSON строковые значения должны записываться в двойных кавычках:


{ "name":"John" }

В JavaScript строковые значения можно записывать как в двойных, так и в одинарных кавычках:


{ name:'John' }

JSON использует синтаксис JavaScript

Так как синтаксис JSON происходит от синтаксиса записи объектов JavaScript, то для работы с данными JSON внутри JavaScript требуется очень мало дополнительных инструментов.

В JavaScript, например, можно создать объект и присвоить ему значения следующим образом:


var person =  { "name":"John", "age":31, "city":"New York" }; 

Получить доступ к данным объекта JavaScript можно так:


// возвращает John
person.name; 

Или так:


// возвращает John
person["name"]; 

Изменить данные объекта можно так:


person.name = "Gilbert"; 

Или так:


person["name"] = "Gilbert"; 

Подобно тому, как объекты JavaScript могут использоваться как данные JSON, массивы JavaScript также могут использоваться как JSON.

Файлы JSON

  • Файлы JSON имеют расширение ".json"
  • Текстовые данные JSON имеют тип MIME "application/json"