有没有办法用_.sortBy方法或库的任何其他部分开箱即用?
答案 0 :(得分:25)
你的意思是this?
var array = [
{ name: "banana" },
{ name: "carrot" },
{ name: "apple" }
];
var sorted = _(array).sortBy("name");
我说它开箱即用。
如果你想对一个普通的字符串数组进行排序,你可能只想使用sort
:
var flatArray = ["banana", "carrot", "apple"];
flatArray.sort();
见here。也有效。
请注意,Underscore的sortBy
会返回一个已排序的 new 数组,其中JavaScript的内置sort
函数会对数组进行排序。
答案 1 :(得分:10)
由于您使用backbone.js标记标记了您的问题,我假设您要对一个集合进行排序,您只需要在您的集合上提供comparator函数,并且主干将保持集合的排序。 / p>
如果您的问题是特定的字母排序,我认为这是默认排序,来自backbone.js文档(我链接到上面)
chapters.comparator = function(chapter) {
return chapter.get("page");
};