迭代json对象的数组

时间:2015-01-15 13:37:02

标签: javascript jquery angularjs

我有以下的json对象数组

{
    "01/15/2015_1": [
        [
            {
                "sequenceType": -1,
                "delflag": -1
            },
            {
                "sequenceType": -1,
                "delflag": -1
            }
        ]
    ],
    "01/15/2015_2": [
        [
            {
                "sequenceType": -1,
                "delflag": -1
            },
            {
                "sequenceType": -1,
                "delflag": -1
            }
        ]
    ]
}

通过使用jquery的each()迭代它,我按照以下顺序获取对象:

1."01/15/2015_1"
2."01/15/2015_2"

但是我想反过来()如下所示:

1."01/15/2015_2"
2."01/15/2015_1"

需要帮助..

是否可以使用ng-repeat?

2 个答案:

答案 0 :(得分:7)

对象没有已定义的顺序,因此您无法确保在每个浏览器中都能正常运行。

您必须抓住密钥Object.keys(),对它们进行排序并按键循环。 e。:

var obj = {
    "01/15/2015_1": [
       "example1"
    ],
    "01/15/2015_3": [
        "example3"
    ],
    "01/15/2015_2": [
        "example2"
    ]
}
var keys = Object.keys( obj ).sort();
var klen = keys.length;
for( var idx = 0; idx < klen; idx++ ){
    console.log( obj[ keys[ idx ] ] )
}

答案 1 :(得分:0)

可能与https://stackoverflow.com/questions/5906061/can-i-make-jquerys-each-method-iterate-in-reverse重复:

Sulution:

$.each(array.reverse(), function() { ... });