0

这是我的 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 对象。序列化前的原始数据: 在此处输入图像描述

4

1 回答 1

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;
    });
于 2014-01-20T07:24:42.373 回答