Что такое JSON?

JSON обозначает JavaScript Object Notation, это легкий формат для обмена и хранения данных. Формат хранения данных в основном используется в вызовах API REST (запрос и ответ REST) ​​и в базах данных NoSQL, таких как MongoDB. JavaScript Object Notation как формат очень прост, самоописателен и интуитивно понятен.

Определение

Это то же самое, что и формат, в котором создаются объекты JavaScript, но в JSON объекты являются только текстовыми. Чтение и генерация нотации объектов JavaScript могут выполняться с использованием любого языка программирования Возможно, нам придется придерживаться следующих правил синтаксиса -

  1. Данные всегда находятся в парах ключ / значение.
  2. Каждый объект данных отделяется запятой.
  3. Объекты удерживаются в фигурных скобках (цветочная скобка, как это '()')
  4. Массивы содержатся в квадратных скобках.

Объект JSON

Типичный объект выглядит следующим образом

(
“Name”: “Alex”,
“Occupation”: “Teacher”,
“Places visited”: (“San Francisco”, “California”, “Houston”) )

В приведенных выше примерах «Имя», «Занятие», «Посещенные места» являются ключами, а «Алекс», «Учитель» и массив («Сан-Франциско», «Калифорния», «Хьюстон») являются значениями соответствующие ключи и все данные, заключенные в цветочные скобки, составляют объект нотации объектов JavaScript. Значения могут быть строкой, другим объектом, логическим значением, нулем, числом.
Объекты также могут быть вложенными и также иметь форму массивов.

Примеры:

1. Вложенные объекты

(
“Role”: “Student”,
“Name”: (
“First name”: “Alex”,
“Last name”: “Hill”
)
)

Внешние фигурные скобки образуют первичный объект JSON, вложенный в другой объект JSON с ключом «Имя», за которым следуют данные во внутренних фигурных скобках. Далее, давайте посмотрим массив объектов.

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

(
“Grade”: 6,
“Student names”: (
(
“First name”: “Alex”,
“Last name”: “Hill”
),
(
“First name”: “Neal”,
“Last name”: “Hunter”
),
(
“First name”: “Peter”,
“Last name”: “Jones”
)
) )

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

3. Типы данных

Значения должны иметь один из следующих типов данных.

  • Строки:

(“name”: “Johnny”)

  • Номер:

(“age”: 21)

  • Объект:

(
employee”: (“name”: “John”, “age”: 221)
)

Примечание. Вложенные объекты в объектах JSON также должны соответствовать тем же правилам синтаксиса, что и обычные объекты JSON.

  • Boolean:

(“sale”: true)

4. Разбор JSON

Давайте рассмотрим Python в качестве примера языка программирования и посмотрим, как обрабатывать объекты данных.

1. импорт JSON
# json - это модуль в Python для обработки своих объектов данных

2. string_a = «(« имя »:« Алекс », « возраст »:« 22 », « род занятий »:« Учитель »)»
# позвольте мне объяснить пример формата строки с правилами синтаксиса

3. json_object = json.loads (string_a)
# теперь json_object имеет string_a в качестве объекта JSON, и значения ключей можно ссылаться следующим образом

print («Имя есть», json_object («имя»))
print (json_object («имя», «возраст есть», json_object («возраст»)))

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

Теперь давайте посмотрим, как мы можем проанализировать объекты JSON из файла в Python

1. импорт JSON
# json - это модуль в Python для обработки своих объектов

2. file_handler = open ('json_data_file.json', 'r')
# open - это функция для открытия файла в python, а файлы json хранятся с расширением
# .json, который в этом примере открывается в режиме чтения 'r'

3. json_object = json.load (file_handler)
# json.load () - это функция, которая принимает обработчик файла json и считывает его данные
# объекты из файла
print («Имя есть», json_object («имя»))
print (json_object («имя», «возраст есть», json_object («возраст»)))

Примечание. Вы можете либо прочитать файл, извлечь содержимое как строку и использовать метод json.loads (), чтобы получить объект json, либо напрямую использовать метод load, чтобы извлечь передаваемый обработчик файла в качестве параметра.

Обмен объектами данных

Почти все языки программирования способны генерировать и обрабатывать словари, хэши или ассоциативные массивы. Таким образом, данные, которыми необходимо обмениваться между клиентами и серверами, должны быть приведены к одной из этих форм в зависимости от используемого языка программирования.

JSON против XML

Традиционно для обмена данными между клиентом и сервером использовался протокол SOAP (простой протокол доступа к объектам), в котором использовался XML (расширяемый язык разметки). С введением REST (Репрезентативный протокол состояния) использование JavaScript Object Notation стало широко известным.

Вот несколько сходств между ними

  1. Оба интуитивно понятны и легко читаются.
  2. Оба могут быть вложенными и иерархическими.
  3. Оба могут быть проанализированы с использованием самых разных языков.
  4. Оба обмениваются через веб-запросы для передачи данных.

Вот несколько различий между ними

  1. У него нет формата тега.
  2. Это оптимальное хранилище, так как оно относительно короче XML.
  3. Это быстрее читать и писать.
  4. Он может использовать массивы, хотя это нелегко в XML.

Недостатки

Хотя мы увидели преимущества, это не лишено недостатков тоже. Ниже приведены недостатки:

  1. Это не совсем безопасно.
  2. Он ограничен с точки зрения поддерживаемых типов данных.

Как знание JSON поможет вам в вашей карьере?

Это формат данных, который используется для обмена информацией между клиентами и серверами. Представьте себе, если бы вы могли разработать оптимизированную схему для представления данных, которая использует меньше данных для обмена большими данными, то это здорово. Весь мир движется к сервисам RESTful API. Вот почему большое знание этого языка поможет вам создать классные API-сервисы.

Вывод

Это один из классных форматов данных для доступа, хранения и понимания данных. Если вы ищете что-то быстрое и легкое для обмена данными, вы всегда можете рассчитывать на использование JavaScript Object Notation.

Рекомендуемые статьи

Это было руководство к тому, что такое JSON. Здесь мы обсудили работу JSON с помощью примеров и того, как и где это может помочь в карьерном росте. Вы также можете просмотреть наши другие предлагаемые статьи, чтобы узнать больше -

  1. Что такое JavaScript?
  2. Что такое PHP Array?
  3. Что такое САС?
  4. Что такое шаблон проектирования в Java?