【发布时间】:2013-06-23 03:47:00
【问题描述】:
假设我有一个对象数组(为了更简单的显示目的,我将其显示为一个数组)
[ 'TEST', 'NEW', 'ALPHA', 'ZOO', 'WHATEVER' ]
我需要按字母顺序对其进行排序(简单的部分),但是,我需要以某种方式对它进行排序,例如NEW 将在最后结束。
[ 'ALPHA', 'TEST', 'WHATEVER', 'ZOO', 'NEW' ]
这是我用来排序的函数
var sortedWords = function(a, b) {
return a.word > b.word ? 1 : -1 ;
};
所以,我得到 sortedWords 数组,然后再次检查它,创建另一个数组并将单词推入新数组,除非单词等于 NEW。在这种情况下,我将它放在一边,并在返回它之前附加到这个新数组的最后。必须有更好、更有效的方法来做到这一点。
谢谢。
【问题讨论】:
-
返回前:
if(a == 'youWord'){return 1;} -
@BrianHannay 将此作为答案发布!
-
@BrianHannay 请记住,如果
a和b都是目标词,则结果必须为0。
标签: javascript