JSON: различия между версиями

Материал из PetruCHIO - Mindustry server
Перейти к навигации Перейти к поиску
[досмотренная версия][досмотренная версия]
м
Строка 1: Строка 1:
 
== Общие положения ==
 
== Общие положения ==
JSON - Язык '''хранения данных''', используется в JavaScript, но из-за своей простоты и удобства стал применяться в прочих языках программирования для хранения данных. Чтобы редактировать JSON, вы должны просто примерно понимать его синтаксис - этого будет достаточно, чтобы освоиться.
+
JSON — Язык '''хранения данных''', используется в JavaScript, но из-за своей простоты и удобства стал применяться в прочих языках программирования для хранения данных. Чтобы редактировать JSON, вы должны просто примерно понимать его синтаксис — этого будет достаточно, чтобы освоиться.
  
 
== Терминология и синтаксис ==
 
== Терминология и синтаксис ==
JSON - это **иерархический** файл для хранения данных. Корневой объект содержит данные, а данные в свою очередь могут быть текстовыми, числовыми, логическими или же вовсе, представлять из себя ещё один объект, или даже '''массив''' объектов. Рассмотрим эти типы данных под лупой.
+
JSON — это **иерархический** файл для хранения данных. Корневой объект содержит данные, а данные в свою очередь могут быть текстовыми, числовыми, логическими или же вовсе, представлять из себя ещё один объект, или даже '''массив''' объектов. Рассмотрим эти типы данных под лупой.
 +
 
 
== Синтаксис ==
 
== Синтаксис ==
В кавычках находится наименование ячейки данных, потом после : идёт само значение этих данных. Кавычки, кстати, используются для текста (или как правильно это называть - '''строки'''). Если в объекте несколько ячеек данных - перечислите их через запятую:
+
В кавычках находится наименование ячейки данных, потом после : идёт само значение этих данных. Кавычки, кстати, используются для текста (или как правильно это называть — '''строки'''). Если в объекте несколько ячеек данных — перечислите их через запятую:
 
  {
 
  {
 
  "amount": 10,
 
  "amount": 10,
Строка 11: Строка 12:
 
  }
 
  }
 
В данном случае мы видим несколько ячеек данных в одном объекте. Фигурные скобки '''{ }''' здесь для того, чтобы ограничить данные, дать понять, что тут объект закончился, а немногим выше он начался.
 
В данном случае мы видим несколько ячеек данных в одном объекте. Фигурные скобки '''{ }''' здесь для того, чтобы ограничить данные, дать понять, что тут объект закончился, а немногим выше он начался.
 +
 
== Числовой целый ==
 
== Числовой целый ==
Данный тип данных является целым числом (целое - это когда после точки ничего нет - никаких десятичных частей) и описывается так:
+
Данный тип данных является целым числом (целое — это когда после точки ничего нет — никаких десятичных частей) и описывается так:
 
  {
 
  {
 
  "amount": 10
 
  "amount": 10
 
  }
 
  }
 +
 
== Строковый ==
 
== Строковый ==
Строковый тип данных хранит в себе некоторую строку (как было нетрудно догадаться). Строка, как написано немногим выше, это всего лишь последовательность каких-то символов - это могут быть буквы, цифры, знаки перепинания, любые другие символы, доступные для ввода или копирования/вставки. Записывается он в кавычках, чтобы символы из строки случайно не считались как служебные символы языка (например, упомянутые '''{ }''')
+
Строковый тип данных хранит в себе некоторую строку (как было нетрудно догадаться). Строка, как написано немногим выше, это всего лишь последовательность каких-то символов — это могут быть буквы, цифры, знаки перепинания, любые другие символы, доступные для ввода или копирования/вставки. Записывается он в кавычках, чтобы символы из строки случайно не считались как служебные символы языка (например, упомянутые '''{ }''')
 
  {
 
  {
 
  "description": "Read rules, pls"
 
  "description": "Read rules, pls"
 
  }
 
  }
 +
 
== Числовой вещественный ==
 
== Числовой вещественный ==
Числовой вещественный тип данных - это тип, представляющий из себя число с десятичной дробью. Возможно вы знаете из школьного курса, что записывать дробную часть надо через ''',''' - нет, тут работает иное правило. Записывайте дробную часть через точку.  
+
Числовой вещественный тип данных — это тип, представляющий из себя число с десятичной дробью. Возможно вы знаете из школьного курса, что записывать дробную часть надо через ''',''' — нет, тут работает иное правило. Записывайте дробную часть через точку.
 
  {
 
  {
 
  "power": 6.2
 
  "power": 6.2
 
  }
 
  }
 +
 
== Объект ==
 
== Объект ==
Интересный тип данных, представляющий из себя ещё один набор данных. Это можно сравнить с папкой на компьютере - внутри главной папки лежит ещё одна. Записывается примерно так:
+
Интересный тип данных, представляющий из себя ещё один набор данных. Это можно сравнить с папкой на компьютере — внутри главной папки лежит ещё одна. Записывается примерно так:
 
  {
 
  {
 
  "consumes": {
 
  "consumes": {
Строка 37: Строка 42:
 
  }
 
  }
 
Рассмотрим повнимательнее этот кусок. Есть ячейка consumes, но представляет она из себя ещё один набор данных, прямо как основной, корневой объект. Внутри неё, в её '''{ }''' находится набор данных. Этот набор данных не имеет отношения к основному набору данных.
 
Рассмотрим повнимательнее этот кусок. Есть ячейка consumes, но представляет она из себя ещё один набор данных, прямо как основной, корневой объект. Внутри неё, в её '''{ }''' находится набор данных. Этот набор данных не имеет отношения к основному набору данных.
 +
 
== Массив объектов ==
 
== Массив объектов ==
Ещё один тип, который мы может увидеть при работе с JSON - это массив объектов. Он из себя представляет перечень объектов, таких же, которые мы наблюдали в примере выше. Записывается он в '''<nowiki>[ ]</nowiki>'''. Использовать такое можно для самых разных целей - например для перечисления. Пример исользования:
+
Ещё один тип, который мы может увидеть при работе с JSON — это массив объектов. Он из себя представляет перечень объектов, таких же, которые мы наблюдали в примере выше. Записывается он в '''<nowiki>[ ]</nowiki>'''. Использовать такое можно для самых разных целей — например для перечисления. Пример исользования:
 
  {
 
  {
 
  "requirements": [
 
  "requirements": [
Строка 49: Строка 55:
 
  ]
 
  ]
 
  }
 
  }
Тут мы видим некий requirements, который содержит в себе перечисление нескольких объектов. Заметьте - именно '''перечисление объектов!''' Вы уже могли прикинуть, что тоже самое можно сделать, используя тип "объект" внутри другого объекта. Но тут мы видим, что нет никаких данных - просто перечисление объектов. На то он и массив.
+
Тут мы видим некий requirements, который содержит в себе перечисление нескольких объектов. Заметьте — именно '''перечисление объектов!''' Вы уже могли прикинуть, что тоже самое можно сделать, используя тип «объект» внутри другого объекта. Но тут мы видим, что нет никаких данных — просто перечисление объектов. На то он и массив.

Версия 18:37, 19 октября 2019

Общие положения

JSON — Язык хранения данных, используется в JavaScript, но из-за своей простоты и удобства стал применяться в прочих языках программирования для хранения данных. Чтобы редактировать JSON, вы должны просто примерно понимать его синтаксис — этого будет достаточно, чтобы освоиться.

Терминология и синтаксис

JSON — это **иерархический** файл для хранения данных. Корневой объект содержит данные, а данные в свою очередь могут быть текстовыми, числовыми, логическими или же вовсе, представлять из себя ещё один объект, или даже массив объектов. Рассмотрим эти типы данных под лупой.

Синтаксис

В кавычках находится наименование ячейки данных, потом после : идёт само значение этих данных. Кавычки, кстати, используются для текста (или как правильно это называть — строки). Если в объекте несколько ячеек данных — перечислите их через запятую:

{
	"amount": 10,
	"height": 12
}

В данном случае мы видим несколько ячеек данных в одном объекте. Фигурные скобки { } здесь для того, чтобы ограничить данные, дать понять, что тут объект закончился, а немногим выше он начался.

Числовой целый

Данный тип данных является целым числом (целое — это когда после точки ничего нет — никаких десятичных частей) и описывается так:

{
	"amount": 10
}

Строковый

Строковый тип данных хранит в себе некоторую строку (как было нетрудно догадаться). Строка, как написано немногим выше, это всего лишь последовательность каких-то символов — это могут быть буквы, цифры, знаки перепинания, любые другие символы, доступные для ввода или копирования/вставки. Записывается он в кавычках, чтобы символы из строки случайно не считались как служебные символы языка (например, упомянутые { })

{
	"description": "Read rules, pls"
}

Числовой вещественный

Числовой вещественный тип данных — это тип, представляющий из себя число с десятичной дробью. Возможно вы знаете из школьного курса, что записывать дробную часть надо через , — нет, тут работает иное правило. Записывайте дробную часть через точку.

{
	"power": 6.2
}

Объект

Интересный тип данных, представляющий из себя ещё один набор данных. Это можно сравнить с папкой на компьютере — внутри главной папки лежит ещё одна. Записывается примерно так:

{
	"consumes": {
		"power": 1.4,
		"item": "copper"
	}
	"size": 2,
	"name": "Turbocannon"
}

Рассмотрим повнимательнее этот кусок. Есть ячейка consumes, но представляет она из себя ещё один набор данных, прямо как основной, корневой объект. Внутри неё, в её { } находится набор данных. Этот набор данных не имеет отношения к основному набору данных.

Массив объектов

Ещё один тип, который мы может увидеть при работе с JSON — это массив объектов. Он из себя представляет перечень объектов, таких же, которые мы наблюдали в примере выше. Записывается он в [ ]. Использовать такое можно для самых разных целей — например для перечисления. Пример исользования:

{
	"requirements": [
		{ 
			"item": "silicon", "amount": 60 
		},
		{ 
			"item": "copper", "amount": 130 
		}
	]
}

Тут мы видим некий requirements, который содержит в себе перечисление нескольких объектов. Заметьте — именно перечисление объектов! Вы уже могли прикинуть, что тоже самое можно сделать, используя тип «объект» внутри другого объекта. Но тут мы видим, что нет никаких данных — просто перечисление объектов. На то он и массив.