@AlexFFFF

Как правильно составить JSON массив?

Есть задача составить JSON в котором передается массив товаров в виде GUID и их количество, прислали мне ТЗ в котором хотят видеть это так:
{
"items": {1234: 1, 4321: 1}
}
Я же считаю что правильно было бы составить двумерный массив вида:
{
"items": [["1234", 1], ["4321", 1]]
}
Хотя бы потому что в будущем кроме GUID и количества могут передаваться другие параметры и поэтому передавать их как пару ключ:значение нельзя. Да и по смыслу GUID это именно что значение, а не ключ. Но составители ТЗ настаивают. Задумался, а вдруг я не прав, выношу на ваш суд.
  • Вопрос задан
  • 514 просмотров
Решения вопроса 1
GavriKos
@GavriKos
Массив в данном случае сильно хуже по тем же причинам что вы описали. Добавится 10 параметров - и хер поймешь какой что значит. + это не обеспечивает уникальность, затрудняет поиск (полный перебор если напрямую в массивы парсить а не в словарь/ассоциативный массив/карту).

Решение в ТЗ тоже не найс (проблемы с расширением, да), но и ваше не лучше.
Мой вариант который хотя бы ближе к ТЗ:
{
"items": {
   1234: {
      "count":1
   }
}
}


Если очень не хочется делать GUID ключем (хотя непонятно почему - он то уникален) - то можно так:
{
"items": [
   {
      "guid":1234,
      "count":1
   }
]
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы