【问题标题】:Iterate through array of json objects遍历 json 对象数组
【发布时间】:2015-03-13 22:06:03
【问题描述】:

我有如下的 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"

但我希望它在 reverse() 中说如下:

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

需要帮助..

ng-repeat 可以吗?

【问题讨论】:

标签: javascript jquery angularjs


【解决方案1】:

Objekt 没有定义的顺序,因此您无法确保它在每个浏览器中都能正常工作。

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

例如:

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 ] ] )
}

【讨论】:

    【解决方案2】:

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

    解决方案:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-07-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-27
      • 2017-11-10
      相关资源
      最近更新 更多