回顾到js中 sort(),
sort() 方法是最强大的数组方法之一。
1.sort() 方法以字母顺序对数组进行排序:
let arr = ['aa', 'ab', 'bb', 'cc', 'cd', 'cs', 'ac', 'ad']
document.getElementById("square").innerHTML = arr;
myFunction()
function myFunction() {
arr.sort();
document.getElementById("square").innerHTML = arr;
}}
运行结果
2.sort()中同时可以添加函数来对数值进行排序(自定义方式)
①使用函数将数组升序排序(降序同理,也可直接使用reverse()进行反转)
var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return a-b});
document.getElementById("square").innerHTML = points;
原理
当比较 40 和 100 时,sort() 方法会调用比较函数 function(40,100)。
该函数计算 40-100,然后返回 -60(负值)。
排序函数将把 40 排序为比 100 更低的值。
②排序对象数组
这个写发同上,只不过在比较的时候需要选择对象中某个属性作为排序标准
var points = [{
name: '小李',
weight: '500'
}, {
name: '小王',
weight: '80'
}, {
name: '小张',
weight: '100'
}];
points.sort(function(a, b) {
return a.weight - b.weight
});
document.getElementById("square").innerHTML = points[0].name+points[0].weight+
points[1].name+points[1].weight+points[2].name+points[2].weight