【发布时间】:2011-01-23 09:41:03
【问题描述】:
是否可以将一个数组映射到一个新数组并同时对其进行排序而无需迭代两次(一次用于第一个数组的映射,一次用于第二个数组的排序)?在使用这样的 map 方法时,我一直在尝试使用匿名函数对其进行排序:
var arr=[4,2,20,44,6];
var arr2=arr.map(function(item, index, array){
if(index==array.length-1 || item==array[index+1]){
return item;
}
else if((item-array[index+1])<0){
return item;
}
else if((item-array[index+1])>0){
return array[index+1];
}
});
console.log(arr2);
但它似乎不起作用。我是如何尝试实现这一点的,还是我的代码有问题?
【问题讨论】:
标签: javascript map sorting