JavaScript自定义排序功能可对字母进行优先级排序

我已经有一个排序数组(最多可以包含1,000个项目),我只想获取以指定字符开头的项目块并将它们移到顶部.

// Before sort
{ "alpha", "beta", "delta", "delta frequency", "gamma", "theta" } 

// After sort with "d" as the specified letter
{ "delta", "delta frequency", "alpha", "beta", "gamma", "theta" }

我对JavaScript不够熟悉,因此不知道执行此操作的好方法.我的第一个想法是遍历每一项,并查看指定起始字符的索引是否为“ 0”,以找到第一个和最后一个数组索引,并将该范围移到数组的顶部,但这似乎可能是浪费.有没有更好的办法?

解决方法:

var array = [ "alpha", "beta", "delta", "delta frequency", "gamma", "theta" ];
var startingWithD = array.filter(function(s) {
    return s[0] == "d";
});
var others = array.filter(function(s) {
    return s[0] != "d";
});
array = startingWithD.concat(others);
上一篇:PHP-MYSQL使用特定的行进行排序和限制,并选择上一行和下一行


下一篇:php-排序desc后mysql中的下一个和上一个记录