gpt4 book ai didi

javascript - 自定义 JavaScript 数组的排序功能

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:26:02 24 4
gpt4 key购买 nike

我有这个非常简单的排序方法:

sortByNumericAttr : function (a, b,attr){            
a = a[attr];
b = b[attr];
return ((a < b) ? -1 : ((a > b) ? 1 : 0));
}

这里的想法是我有不同的对象需要排序(id、类型等),所以我想不是为每个对象编写不同的排序函数(所有的区别只是排序的属性),我将编写一个通用方法并将属性传递给它。

所以如果它是这样写的,我可以这样调用它:

arr.sort(utils.sortByNumericAttr,'typeId');

如何根据这个函数实现这个或类似的效果?

最佳答案

你可以用另一个函数创建一个函数:

function sort_by(attr) {
return function(o1, o2) {
var a = o1[attr];
var b = o2[attr];

return ((a < b) ? -1 : ((a > b) ? 1 : 0));
};
}

然后像 .sort(sort_by('id')) 这样调用它。

关于javascript - 自定义 JavaScript 数组的排序功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14849025/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com