Сінтаксіс
1. Асноўная структура
-
Змесціва файла пачынаецца і заканчваецца аб'ектам, акружаным фігурнымі дужкамі
{}
. -
Аб'ект складаецца з пар ключ-значэнне, дзе ключ — гэта назва атрыбута, а значэнне — гэта значэнне гэтага атрыбута.
-
Ключ і значэнне аддзяляюцца двукоссямі (
:
) або знакам роўнасці (=
).
2. Каментары
-
Каментары пачынаюцца з
//
або#
і пішуцца ў адз ін радок. -
Каментары дзейнічаюць да канца радка.
-
Мультырадковыя каментары не падтрымліваюцца. Калі неабходна напісаць каментары на некалькіх радках, трэба дадаць
//
або#
у пачатку кожнага радка.
3. Аб'ект (Object)
-
Аб'ект акружаны фігурнымі дужкамі
{}
і змяшчае пары ключ-значэнне. -
Можна выкарыстоўваць як : так і = паміж ключом і значэннем. Абедзве сімвалы ўзаемазаменныя.
-
Кожная ўласцівасць аддзяляецца коскай (C).
-
У аб'екце можна ўкладаць іншыя аб'екты.
Прыклад:
{
status: "success",
code = 200,
user = { id: 123, name: "John Doe" }
}
4. Масіў (Array)
-
Масіў акружаны квадратнымі дужкамі
[]
, а элементы аддзяляюцца коскамі (,
). -
Элементы масіва могуць быць аб'ектамі, радкамі, лікамі ці іншымі тыпамі даных.
-
У WSON масівы могуць быць уключаны ў аб'екты, а масівы могуць утрымліваць іншыя масівы ці аб'екты.
Прыклад:
tasks: [
{ task_id: 1, title: "Complete project report" },
{ task_id: 2, title: "Review team feedback" }
]
5. Пары ключ-значэнне (Key-Value Pair)
-
Назвы ўласцівасцей — гэта радкі, якія размяшчаюцца непасрэдна пасля
:
або=
, без прабелаў. -
Тып значэння можа быць радком, лікам, булевым значэннем, аб'ектам або масівам.
-
Радкі абкручваюцца двукоссямі (
"
). -
Лікі запісваюцца без двукоссяў і могуць быць цэлымі або з плаваючай коскай.
Прыклад:
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: "[email protected]",
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"
}
]
}