聊聊sort函数

sort函数是为数组排序的,如果数组元素是字符串类型,那么数组的可变方法sort()就变得非常好使,因为sort()方法是按字符大小排序的
var names = ["David","Mike","Cynthia","Clayton","Bryan","Raymond"];
names.sort();
console.log(names); // Bryan,Clayton,Cynthia,David,Mike,Raymond

但是如果数组元素是数字类型,sort()方法的排序结果就不能让人满意了
var arr = [3,1,2,100,4,200];
arr.sort();
console.log(arr) //1,100,2,200,3,4

解决方法:为了让sort也能排序数字类型的元素,可以在调用方法是传入一个大小比较函数
// 升序排序
function compare(a,b){
return a-b;
}
// 降序排序
function compare(a,b){
return b-a;
}

var arr = [3,1,2,100,4,200];
arr.sort(compare); //1,2,3,4,100,200

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容