0

我用对象填充一个数组(一种模型)。如何按“标题”对该数组进行排序?

// For ...
var item = {title: title, src: file};
images.push(item);

// How to sort?
images.sortBy('title')
4

2 回答 2

0

Array.sort接受一个可选的比较函数(doc),所以你可以这样做:

images.sort(function(a, b) {
    // compare a.title to b.title
});
于 2013-07-08T16:35:30.443 回答
0

要对数组进行排序,请将 Array.sort 与自定义排序函数一起使用。

images.sort(alphabeticallyByTitle);

function alphabeticallyByTitle(a, b){
    if (a.title < b.title){
        return -1;
    }
    if (a.title > b.title){
        return 1;
    }
    return 0;
}

自然排序需要更复杂的排序功能。查看这篇文章以获得很好的文章和一些示例代码: http: //my.opera.com/GreyWyvern/blog/show.dml/1671288

于 2013-07-08T16:40:06.543 回答