Сортировать вложенный массив JSON на месте

Это моя структура JSON:

Root
|- cells []
     |-Individual cells containing the following
                         |- Facts (Object)
                         |- Measures (Object)
                                 |- Key values pairs
|- other values

Мне нужно отсортировать значения в объекте мер на месте. Будет ли это возможно? Если нет, то каким должен быть оптимизированный подход к этому? Я мог бы извлечь эти значения во временный массив и затем отсортировать их, а затем найти их соответствующие ключи и переупорядочить весь JSON. Но это не кажется оптимизированным решением.

Я в основном пытаюсь добиться сортировки в jsHypercube: https://github.com/thesmart/js-hypercube. Обыскал библиотеку, но не смог найти какой-либо метод сортировки.


Добавление снимка образца JSON:введите описание изображения здесь

Ожидаемый результат - отсортированный массив _cells на основе любого ключа в measures объект, как стоимость, прибыль или доход.


Что касается комментариев @FelixKling, я считаю, что данные должны быть отсортированы перед сериализацией в объект JavaScript. Исходные данные до сериализации:введите описание изображения здесь

1 ответ

Решение

С помощью предложения @FelixKling я смог отсортировать его с помощью простого блока кода. Размещать это, так как это может быть полезно для кого-то еще.

tempCube.sort(function(a, b) {
        var valueA, valueB;        

        valueA = a.measures.Cost; 
        valueB = b.measures.Cost;
        if (valueA < valueB) {
            return -1;
        }
        else if (valueA > valueB) {
            return 1;
        }
        return 0;
    });
Другие вопросы по тегам