【发布时间】:2014-05-23 12:51:55
【问题描述】:
我希望拥有与排序相同的功能(例如传递一个比较函数),而不是对数组进行排序,而是为每个对象调用一个函数,该函数将特定元素的顺序作为参数。
你可以这样使用它:
var users=[
{name:"Stephen",age:12},
{name:"Mike",age:17},
{name:"Jeffrey",age:32},
{name:"Anna",age:15}
]
var result=users.getOrder(
function(userA,userB)
{return userA.age-userB.age>0;},
function(user,order)
{user.num=order;});
/* result=[
{name:"Stephen",age:12,num:4},
{name:"Mike",age:17,num:2},
{name:"Jeffrey",age:32,num:1},
{name:"Anna",age:15,num:3}
]*/
如果他们是一种使用通常的数组函数来编写它的方法,或者我必须自己编写循环和排序算法,我会很高兴。有什么办法吗?
【问题讨论】:
标签: javascript arrays sorting