JSON урок: Научете с прост пример

⚡ Умно обобщение

JSON, съкращение от JavaScript Object Notation е лек, четлив за човек формат за съхранение и обмен на структурирани данни между сървъри и приложения. Този ресурс обяснява неговия синтаксис, типове данни, приложения в реалния свят и разликите, които го отличават от XML.

  • 🔑 Основна дефиниция: JSON съхранява информация като двойки име/стойност и подредени масиви, използвайки къдрави скоби за обекти и квадратни скоби за масиви.
  • 🧩 Поддържани типове данни: Овладейте шестте JSON типа данни – низ, число, булеви, null, обект и масив – за да моделирате почти всяка структура.
  • Защо екипите го възприемат: JSON се анализира директно в JavaСкрипт, работи във всички браузъри и се интегрира с повечето backend технологии и REST API.
  • 🔄 JSON срещу XML: В сравнение с XML, JSON е типизиран, по-четим за човек и по-бърз за сериализиране, въпреки че му липсват възможности за показване на маркиране.
  • 🛠️ Практични инструменти: Валидирайте, форматирайте и минифицирайте кода с помощни програми като JSONLint, JSON Editor Online и JSON Formatter преди внедряването.

Урок за JSON

Какво е JSON?

JSON е файлов формат, използван за съхраняване на информация по организиран и лесен за достъп начин. Пълната му форма е JavaНотация на обект на скрипт. Той предлага колекция от данни, която може да се чете от човека, до която има логичен достъп. Неговото файлово разширение за писмен програмен код е .json. Типът интернет медия за JSON е application/json, а неговият унифициран тип идентификатор е public.json.

След като дефиницията е ясна, следващият раздел обяснява защо разработчиците избират JSON пред други формати на данни.

Защо да използваме JSON?

Ето важните предимства/плюсове от използването на JSON:

  • Осигурете поддръжка за всички браузъри
  • Лесен за четене и писане
  • Ясен синтаксис
  • Можете да правите естествен анализ JavaСкрипт, използващ функцията eval().
  • Лесен за създаване и манипулиране
  • Поддържа се от всички основни JavaСкрипт рамки
  • Поддържа се от повечето бекенд технологии
  • JSON се разпознава естествено от JavaСценарий
  • Това ви позволява transmit и сериализирайте структурирани данни, използвайки мрежова връзка.
  • Можете да го използвате с модерни езици за програмиране.
  • JSON е текст, който може да бъде преобразуван във всеки обект JavaСкриптирайте в JSON и изпратете този JSON на сървъра.

История на JSON

История на JSON
Урок за JSON

Ето важни ориентири, които формират историята на JSON:

  • Дъглас Крокфорд уточни формата JSON в началото на 2000-те години.
  • Официалният уебсайт стартира през 2002 г.
  • През декември 2005 г. Yahoo! започва да предлага някои от своите уеб услуги в JSON.
  • JSON стана международен стандарт на ECMA през 2013 г.
  • Най-актуализираният стандарт за формат JSON беше публикуван през 2017 г.

Отвъд тази времева линия, JSON предлага и набор от практични функции, които обясняват трайната му популярност.

Характеристики на JSON

Лесен за използване – JSON API предлага фасада на високо ниво, която ви помага да опростите често използваните случаи на употреба.

Изпълнение – JSON е доста бърз, тъй като консумира много по-малко място в паметта, което е особено подходящо за големи обектни графики или системи.

Безплатен инструмент – JSON библиотеката е с отворен код и е безплатна за използване.

Не е необходимо създаване на картаping – Jackson API предоставя карта по подразбиранеping за да бъдат сериализирани много обекти.

Чист JSON – Създава чист и съвместим JSON резултат, който е лесен за четене.

Зависимост – JSON библиотеката не изисква друга библиотека за обработка.

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

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

  • Данните трябва да са в двойки име/стойност
  • Данните трябва да бъдат разделени със запетаи
  • Къдравите скоби трябва да държат обекти
  • Квадратните скоби съдържат масиви

Типове данни в JSON

След установяване на синтактичните правила, следващата таблица изброява важните типове данни, използвани в JSON:

Тип данни Descriptйон
Телефон за връзка: Включва реално число, цяло число или плаващо число
Низ Състои се от всеки текст или Unicode в двойни кавички с обратна наклонена черта
Булева Булевият тип данни представлява True или False стойности
Null Стойността Null означава, че свързаната променлива няма никаква стойност
Обект Това е колекция от двойки ключ-стойност и винаги разделени със запетая и оградени във къдрави скоби.
Array Това е подредена последователност от разделени стойности.

Телефон за връзка:

  • Числото е формат с плаваща запетая с двойна точност, който зависи от метода на изпълнение.
  • В JSON не можете да използвате шестнадесетични и осмични формати.

Следващата таблица показва типове числа:

Тип Descriptйон
цяло число Числа 1-9 и 0. Както положителни, така и отрицателни числа.
Фракция Дроби като 3
експонат Показател като e, e+

Синтаксис:

var json-object-name = { string : number_value,......}

Пример:

var obj = {salary: 2600}

Низ

Това е поредица от двойно кавирани Unicode символи с обратна наклонена черта esc.ping.

Следната таблица показва различни типове низове:

Тип Descriptйон
* Използвайте за двойни кавички typing
/ Използвайте за солидус
\ Използвайте за обратен солидус
B Използвайте за добавяне на backspace
F От фуража
N За създаване на нов ред
R Използвайте за връщане на каретка
T За показване на хоризонтален раздел
U Шестнадесетични цифри

Синтаксис:

var json-object-name = { string : "string value",…..}

Пример:

var obj = {name: 'Andy'}

Булева

Той съхранява само истински или неверни стойности.

Синтаксис:

var json-object-name = {string : true/false, …..}

Пример:

var obj = {active: 'true'}

Array

  • Това е подредена колекция от стойности.
  • Трябва да използвате масив, когато имената на ключовете са последователни цели числа.
  • Трябва да бъде ограден в квадратни скоби, които трябва да бъдат разделени с „,“ (запетая)

Синтаксис:

[value, .......]

Пример:

Показване на масив, съхраняващ множество обекти:

{
   "eBooks":[
      {
         "language":"Pascal",
         "edition":"third"
      },
      {
         "language":"Python",
         "edition":"four"
      },
      {
         "language":"SQL",
         "edition":"second"
      }
   ]
}

JSON обект

A JSON обект е обект в JSON, който е ограден във къдрави скоби. Написано е в неподредения набор от двойки име и стойност, в които името трябва да бъде последвано от „:“ (двоеточие), а двойките име/стойност трябва да бъдат разделени с помощта на „,“ (запетая). Може да се използва, когато имената на ключовете са произволни низове.

Синтаксис:

{ string :  value, ….. }

Пример:

{
"id": 110,
"language": "Python",
"price": 1900,
}

Празно

Можете да вмъкнете празно пространство между чифт токени.

Пример:

Синтаксис:

{string:"    ",….}

Пример:

var a = " Alex"; var b = "Steve";

Пример за JSON

Даденият примерен код дефинира как да използвате JSON за съхраняване на информация, свързана с книги за програмиране заедно с изданието и името на автора.

{
   "book":[
      {
         "id":"444",
         "language":"C",
         "edition":"First",
         "author":"Dennis Ritchie "
      },
      {
         "id":"555",
         "language":"C++",
         "edition":"second",
         "author":" Bjarne Stroustrup "
      }
   ]
}

Нека разберем JSON формата с друг пример за JSON файл. Тук JSON дефинира собственото име, фамилията и идентификатора на ученик.

{
  "student": [

     {
        "id":"01",
        "name": "Tom",
        "lastname": "Price"
     },

     {
        "id":"02",
        "name": "Nick",
        "lastname": "Thameson"
     }
  ]
}

Приложение на JSON

Ето някои често срещани приложения на JSON:

  • Помага ви да прехвърляте данни от сървър
  • Примерен JSON файлов формат помага в transmit и сериализира всички видове структурирани данни.
  • Позволява ви да извършвате асинхронни извиквания на данни, без да е необходимо да правите опресняване на страницата
  • Помага ти transmit данни между сървър и уеб приложения.
  • Използва се широко за JavaБазирано на скрипт приложение, което включва разширение за браузър и уебсайтове.
  • Можете да transmit данни между сървъра и уеб приложението, използвайки JSON.
  • Можем да използваме JSON с модерни езици за програмиране.
  • Използва се за писане JavaБазирани на скрипт приложения, които включват добавки за браузър.
  • Уеб услугите и Restful API използват формата JSON за получаване на публични данни.

Тъй като JSON е толкова широко използван, той често се сравнява с XML, форматът, който често замества.

JSON срещу XML

Ето основната разлика между JSON и XML

JSON XML
JSON обектът има тип XML данните са без тип
JSON типове: низ, число, масив, булев Всички XML данни трябва да са низови
Данните са лесно достъпни като JSON обекти XML данните трябва да бъдат анализирани.
JSON файловете са по-четими за хора. XML файловете са по-малко четими.
JSON се поддържа от повечето браузъри. Разборът на XML между различни браузъри може да бъде труден
JSON няма възможности за показване. XML предоставя възможност за показване на данни, тъй като е език за маркиране.
Извличането на стойност е лесно Извличането на стойност е трудно
Поддържа се от много инструменти на Ajax Не се поддържа напълно от инструментариума на Ajax
Напълно автоматизиран начин за десериализация/сериализация JavaСценарий. Разработчиците трябва да пишат JavaКод на скрипт за сериализиране/десериализиране от XML
Вградена поддръжка за обект. Обектът трябва да бъде изразен чрез конвенции – най-вече пропусната употреба на атрибути и елементи.

Пример за JSON

По-долу е прост пример за JSON:

{
  "student": [

     {
        "id":"01",
        "name": "Tom",
        "lastname": "Price"
     },

     {
        "id":"02",
        "name": "Nick",
        "lastname": "Thameson"
     }
  ]
}

XML пример

<?xml version="1.0" encoding="UTF-8" ?>
<root>
	<student>
		<id>01</id>
		<name>Tom</name>
		<lastname>Price</lastname>
	</student>
	<student>
		<id>02</id>
		<name>Nick</name>
		<lastname>Thameson</lastname>
	</student>
</root>

Какво не е JSON?

  • Примерен JSON файл с данни не е формат на документ.
  • Това не е език за маркиране.
  • JSON не предоставя общ формат за сериализиране.
  • Това не е повтарящи се или циклични структури.
  • Освен това не е невидима структура.

Недостатъци на JSON

Ето няколко предимства на JSON:

  • Няма поддръжка за пространство на имена, следователно лоша разширяемост
  • ограничен инструменти за разработка подкрепа
  • Няма поддръжка за формална граматична дефиниция

Популярни JSON инструменти (добавки)

Ето важни JSON инструменти:

JSONLint:

JSONLint е проект с отворен код, който се използва като валидатор и преформатиращ JSON. Това е лек формат за обмен на данни. Копирайте и поставете, пишете директно или въведете данни. URL в инструмента за валидиране на JSON, за да валидирате вашия JSON код.

Връзка: https://jsonlint.com

Онлайн редактор на JSON:

JSON Editor Online е полезен уеб базиран инструмент. Позволява ви да редактирате, преглеждате и форматирате JSON. Той показва вашите данни един до друг в ясен, редактируем софтуер за редактиране на кодове.

Връзка: https://jsoneditoronline.org/

JSON Minifier Tool:

Това е инструмент, който ви помага да премахвате белите интервали и дава JSON код, който заема най-малко място.

Връзка: https://www.browserling.com/tools/json-minify

Конвертор от JSON към XML:

Конверторът от JSON към XML е прост и ефективен инструмент, който ви помага да конвертирате вашия JSON код.

Връзка: https://codebeautify.org/jsontoxml

Форматиране на JSON:

Форматирането на JSON ви помага да разрешите проблема, като форматирате JSON данните, така че да са лесни за четене и отстраняване на грешки от човек.

Връзка: https://jsonformatter.curiousconcept.com/

Въпроси и Отговори

Не. JSON е формат за обмен на данни, а не език за програмиране. Той само съхранява и пренася структурирани данни, използвайки текстов синтаксис. Езици за програмиране като Javaскрипт, Python, и Java четене и запис на JSON.

Самият JSON е обикновен текст и е безопасен. Рискове възникват при анализиране на ненадежден вход, особено със стария метод eval(). Използвайте стандартен JSON парсер, като например JSON.parse(), и валидирайте данните, за да избегнете проблеми с инжектирането.

JSON е текстовият формат, използван за съхранение и transmit данни. JSON обектът е една структура в този формат, записана в къдрави скоби като двойки име/стойност. Пълният JSON файл може да съдържа много обекти и масиви.

Системите с изкуствен интелект използват JSON, за да изпращат подкани, да получават отговори и да обменят параметри на модела. Повечето API-та за големи езикови модели приемат и връщат JSON, което го прави стандартен формат за заявки, структурирани изходи и конфигурация на данни за обучение.

Да. Асистентите с изкуствен интелект могат да генерират JSON от обикновени описания и да го проверяват за синтактични грешки. Много инструменти също така налагат схема, така че резултатът остава валиден и съответства на структурата, която приложението очаква.

Обобщете тази публикация с: