JSON (обозначение объектов JavaScript) – это упрощенный формат обмена данными. Людям легко читать и писать. Машины легко анализируют и генерируют.

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

Лучшие практики

#1 Заключите ключи и текстовое значение в двойные кавычки "key": "value"

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

// is not right ✘
{'id': '1','name':File} 
// is okay  ✓
{"id": "1", "name":"File"} 
// is the best  ✓
{"id": 1, "name":"File"}

# 2 Используйте соответствующий тип данных для значений

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

{"id": 1, "isPresent": true} // is the best  ✓

#3 Дата и ноль

Даты должны быть заключены в двойные кавычки. JSON не поддерживает тип даты, поэтому вам нужно определить дату как строку. Позже вы можете разобрать строку даты в объект даты.

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

Если значение ключа неизвестно, можно использовать null.

{"id": 1, "today": " 27-05-2023 12:22:44"} // is the best  ✓
{"id": 1, "active": null} // is the best  ✓

#4 Используйте CamelCase вместо дефисов

Никогда Никогда Никогда не используйте дефисы в ключевых полях. Это ломает Python, синтаксический анализатор scala, и разработчики должны избегать его, чтобы использовать эти поля.

Вместо дефисов используйте символы подчеркивания (_). Но лучше всего использовать все строчные или верблюжьи буквы. См. образцы ниже.

{"first-name": "Ashish", "last-name": "Jaiswar"}  is not right. ✘
{"first_name": "Ashish", "last_name": "Jaiswar"} is okay ✓
{"firstname": "Ashish", "lastname": "Jaiswar"} is okay ✓
{"firstName": "Ashish", "lastName": "Jaiswar"} is the best. ✓

#5 Необходимо создать корневой элемент

Создание корневого элемента необязательно, но помогает при создании сложного JSON.

// JSON with root element
{
"menu": [
    {
        "id": "1",
        "name":"File",
        "value": "F",
        "popup": {
            "menuitem": [
                {"name":"New", "value": "1N", "onclick": "newDoc()"},
                {"name":"Open", "value": "1O", "onclick": "openDoc()"},
                {"name":"Close", "value": "1C", "onclick": "closeDoc()"}
                ]
            }
    }
}

Как структурировать JSON?

Организация JSON может помочь вам эффективно управлять своими данными. Это поможет вам определить и поддерживать отношения между объектами. Мне нравится визуализировать данные JSON в виде таблицы, что помогает мне повысить производительность.

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

  • Рассматривайте файл JSON как файл базы данных
  • Рассмотрите свой корневой элемент как table.
  • Рассмотрите ключи вашего объекта как columns
  • Если у вас есть несколько корневых элементов, создайте связь между ними, добавив общий ключ в оба объекта, например order_id.

Важные моменты:

  • Вы не должны использовать файлы JSON в качестве базы данных, потому что по мере роста данных размер файла будет увеличиваться.
  • JSON следует использовать только в качестве короткого и точного ответа API.
{
  //table 
	"products": [
    {
			// columns: value
      "id": 1,  //------------------------------------------------------
      "productName": "Apple Mac",
      "price": 1299
    },
    {
      "id": 2,
      "productName": "Apple Air",
      "price": 999
    }
  ],
  "orders": [
    {
      "orderId": 100, 
      "productId": 1,  //--------------------------------------------------
      "quantity": 2
    },
    {
      "orderId": 101,
      "productId": 2,
      "quantity": 3
    }
  ]
}

Инструменты для JSON

  • Код Visual Studio + более красивое расширение: он имеет встроенные инструменты для проверки данных и подсветки синтаксиса. Prettier автоматически преобразует ваши беспорядочные данные в чистый формат.
  • Скачать код VS отсюда
  • Установите расширение Prettier здесь

Инструмент визуализации JSON

  • JSON Crack: великолепная визуализация JSON, которая помогает находить определенные объекты, делать скриншоты и многое другое.

https://jsoncrack.com/

  • Console.table. Браузеры имеют встроенный метод для отображения вашего JSON в виде таблицы. Просто используйте приведенный ниже метод в браузере или в своем коде и передайте объект JSON.
console.table({id: 1, "name": "Ashish", "Job": "Dev"})

Ресурсы

  • Чтобы узнать подробнее о взломе JSON, посетите этот удивительный блог Pricilla Bilavendran.

Подведение итогов 🥱

Спасибо за прочтение! Я очень надеюсь, что вам понравилось читать эту короткую статью о том, как эффективно пользоваться Google, и вы нашли это руководство полезным.

Если у вас есть какие-либо вопросы/предложения/отзывы, свяжитесь со мной в Твиттере или спросите меня в разделе комментариев.

Нравится и подписывайтесь 😊

До встречи в следующем блоге. Наслаждайтесь программированием ❤