JSON извлечение данных



  • Доброго времени суток. Есть JSON ответ такого вида:

    [
      {
        "cellCount": 80,
        "placeCount": 0,
        "onPlaceAndWavebreakerCount": 0,
        "cells": [
        {
          "cellId": 1,
          "cellItemsCount": 2,
        },
        {
          "cellId": 4,
          "cellItemsCount": 6,
        },
        {
          "cellId": 12,
          "cellItemsCount": 11,
        },
    

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

    $.cells..cellId,cellItemsCount
    

    Как можно реализовать такое: суммируются все значения cellItemsCount, но при достижении определенного значения cellId скрипт завершается и выводит в лог итоговое значение всех cellItemsCount?

    Заранее спасибо за информацию.



  • @SupremeFM это полный JSON, мне выдает что такой JSON не валидный



  • дай весь JSON



  • @llimonix

    [
      {
        "cellCount": 78,
        "placeCount": 0,
        "onPlaceAndWavebreakerCount": 0,
        "cells": [
          {
            "cellId": 1,
            "cellItemsCount": 22,
            "expectedCellCount": 2
          },
          {
            "cellId": 4,
            "cellItemsCount": 7,
            "expectedCellCount": 2
          },
          {
            "cellId": 7,
            "cellItemsCount": 10,
            "expectedCellCount": 2
          },
          {
            "cellId": 30,
            "cellItemsCount": 3,
            "expectedCellCount": 2
          }
        ]
      }
    ]
    

    Вот этот должен быть валидный. И суть такова: суммируются ключи cellItemsCount (то, есть тут это 22+7+10+3, но, например, при достижении cellId значения 7, скрипт останавливается и выводит суммарное значение cellItemsCount по ключ cellId: 7.

    Самом по себе JSON ответ этот в разы больше, поэтому и автоматизировать это хочется.



  • В общем решил через списки и получение элемента. Может кому-то будет полезно:

    Снимок экрана 2022-04-04 в 14.57.50.png
    Снимок экрана 2022-04-04 в 14.58.03.png


Log in to reply
 

  • 2
  • 2
  • 3
  • 7
  • 3
  • 3
  • 8
  • 2