【问题标题】:Reorder objects重新排序对象
【发布时间】:2011-11-30 14:50:52
【问题描述】:

排序和转换的最佳方式是什么:

{
  '32': 'foo',
  '24': 'bar',
  '36': 'doe'
}

进入:

[
  {'24': 'bar'},
  {'32': 'foo'},
  {'36': 'doe'}
]

我需要根据键对它们进行排序,键是原始对象中的字符串。允许使用jQuery的API。

【问题讨论】:

  • 这是两个完全不同的对象......一个是具有一些属性的对象,另一个是具有一些对象元素的数组......
  • 我在第一句话中添加了“变换”。基本都是一样的数据,但是我需要一个可以按顺序循环的数组。

标签: javascript arrays sorting object


【解决方案1】:

试试这个:

function arrayMe(obj){
    var indexes = [];
    for(index in obj){
        indexes.push(index);
    }
    indexes.sort();
    var return_array = [];
    for(var i = 0; i < indexes.length; i++){
        return_array[i] = {};
        return_array[i][indexes[i]] = obj[indexes[i]];
    }
    return return_array;
}

您所要做的就是:

arrayMe(oldObject);

小提琴:http://jsfiddle.net/maniator/uBqjt/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多