【发布时间】:2012-11-22 18:30:21
【问题描述】:
可能重复:
JavaScript - Sort an array based on another array of integers
Javascript - sort array based on another array
如果我有这样的数组:
['one','four','two']
还有一个这样的数组:
[{
key: 'one'
},{
key: 'two'
},{
key: 'four'
}]
如何对第二个数组进行排序,使其 key 属性遵循第一个数组的顺序?在这种情况下,我想要:
[{
key: 'one'
},{
key: 'four'
},{
key: 'two'
}]
【问题讨论】:
-
@TedHopp 不完全是,它解决了两个平面数组,但这种情况下使用对象键,这使得有效排序变得更加困难(除非您想为每次迭代搜索第二个)。
-
我希望这样的事情能够奏效,但不知何故……它没有。 :-/
a2.sort(function(a,b) { a1[a2.indexOf(a)] - a1[a2.indexOf(b)] })
标签: javascript arrays sorting