我有一个对象的对象。(因为我要使用关联数组,所以对象的对象,而不是对象的数值数组)
var tasks=new Object();
for(...){
tasks[foo-i]={};
tasks[foo-i].index=....;
tasks[foo-i].name=...;
}我有一个输出任务名称的函数,但它们必须按照索引的升序排列。所以,我必须有一个临时的排序函数。你会怎么做呢?谢谢
发布于 2011-07-14 06:42:54
可以将函数传递给array对象的sort方法,该方法用于确定数组中对象的顺序。默认情况下,它按字母和数字顺序执行此操作,但数字方式有点混乱。下面是我如何解决您的问题,假设您用来对它们进行排序的索引是数字的:
tasks.sort(function(obj1,obj2){
return obj1.index - obj2.index;
});如果为object1>object2,则传递给sort方法的函数应返回正整数;如果为object1=object2,则返回0;如果为object1,则返回负整数
https://stackoverflow.com/questions/6686365
复制相似问题