sort
方法对数组的元素做原地的排序,并返回这个数组。 sort
排序可能是不稳定的。默认按照字符串的Unicode码位点(code point)排序。
用法
arr.sort([compareFunction])
示例
var scores = [1, 10, 2, 21];
scores.sort(); // [1, 10, 2, 21]
因为是按照unicode排序,所以返回的是[1, 10, 2, 21]。
那么如果想要按大小排序呢?
可以这样
function change(a,b) {
if(a > b) return -1;
return 1;
}
arr.sort(change);
如果a>b,a会排在b的前面;反之b会排在a的前面。
如果比较的是两个字符串的长度,可以这样写。
function change(a,b) {
if(a.length > b.length) return -1;
return 1;
}
arr.sort(change);
这样长的字符串就会排到前面。
当然也可以写到函数里。
比如
var numbers = [4, 2, 5, 1, 3];
numbers.sort(function(a, b) {
return a - b;
});
console.log(numbers);
// [1, 2, 3, 4, 5]