Перейти к основному содержимому

Синтаксис

1. Основная структура

  • Содержание файла начинается и заканчивается объектом {}, заключенным в фигурные скобки.

  • Объект состоит из пар ключ-значение.

  • Имя свойства и значение разделяются двоеточием(:) или знаком равенства(=).

2. Комментарий

  • Комментарии начинаются с // или # и пишутся на одной строке.

  • Комментарии действуют до конца данной строки.

  • Для многострочных комментариев поддержку предоставляют отдельно - необходимо добавлять // или # в начале каждой строки.

3. Объект

  • Объект заключен в фигурные скобки {} и включает пары ключ-значение.

  • Между ключом и значением можно использовать символы : или =. Можно смешивать оба символа.

  • Каждое свойство разделяется запятой(,).

  • Объекты можно вкладывать друг в друга.

Пример:

{
status: "success",
code = 200,
user = { id: 123, name: "John Doe" }
}

4. Массив

  • Массив окружен квадратными скобками [], а элементы разделены запятыми(,).

  • Элементы массива могут быть объектами, строками, числами и другими типами данных.

  • В WSON массивы могут быть частью объекта, а в массиве можно вкладывать другие массивы или объекты.

Пример:

tasks: [
{ task_id: 1, title: "Complete project report" },
{ task_id: 2, title: "Review team feedback" }
]

5. Пара ключ-значение

  • Имя свойства состоит из строки, после которого сразу без пробела идет значение, отделенное : или =.

  • Типы значений включают строки, числа, булевые значения, объекты и массивы.

  • Строки заключаются в двойные кавычки .

  • Числа используются без кавычек и могут быть в целочисленной или десятичной форме.

Пример:

name: "John Doe"
age = 25

6. Типы данных (Data Types)

  • Строка(String): текст, заключенный в двойные кавычки ".
"hello world"
  • Число(Number): целое или вещественное число.
42
3.14
  • Булево значение(Boolean): принимает true или false.
is_active = true
  • Объект(Object): пара ключ-значение, заключенная в фигурные скобки {}.
  • Массив(Array): список элементов, заключенный в квадратные скобки [].

7. Объяснение примера

{
// Код состояния и информация о сообщении
status: "success",
code: 200,
message: "Data retrieved successfully",

user = {
id = 123,
name: "John Doe",
email: "john@example.com",
age: 25 # возраст пользователя
},

tasks: [
{
task_id: 1,
title: "Complete project report",
status: "in-progress",
due_date: "2024-10-15"
},
{
task_id: 2,
title: "Review team feedback",
status: "pending",
due_date: "2024-10-20"
}
]
}