JavaScript中的sort排序及字典序陷阱的解决方法
来源:互联网 发布:e商盟软件 编辑:程序博客网 时间:2024/04/30 18:35
在JavaScript中,数组排序我们可以直接利用sort方法进行排序
排序字符串
var Fruits = ["Banana", "Orange", "Apple", "Mango"];Fruits.sort();
排序结果为[ “Apple”, “Banana”,”Mango”, “Orange”]
排序的方式为字典序(alphanumeric),即根据数组内元素首字母进行排序,此方法排序会改变原数组的顺序。
在元素为数字的数组中,sort方法依然会根据字典序(alphanumeric)进行排序。
排序数字(字母序)
var Num = ["1", "2", "3", "10"];Num.sort();
排序结果为[“1”, “10”, “2”, “3”]
如果需要根据数字大小进行排序,则需将代码更改为
num.sort((a, b) => a - b)//从小到大
或者
[1,2,5,10].sort(function(a,b){return a-b;})//从小到大
排序结果为[“1”, “2”, “3”, “10”]
这里函数内执行的是冒泡排序。通过返回值的正负判断相邻两个元素是否交换位置
若需从大至小排序,则需将返回值改为b-a。
阅读全文