Array.sort方法

掉坑里了,以前看介绍,只知道js里面数组有个sort方法,可以用来排序,但怎么排序的,不知道了

var arr = [3,6,4,55,23,63,415,42]
console.log(arr.sort());

以为是数字升序排列,得到[3,4,6,23,42,55,63,415]  我错了,当时没看清楚介绍。 运行结果其实是

[23, 3, 4, 415, 42, 55, 6, 63]

 可以看出来,是按字母顺序排列的。

 

如果希望是按照数字排序,或者说按照自己的想法排序,sort可接受排序函数

var arr = [3,6,4,55,23,63,415,42]
console.log(arr.sort(function(a,b){
  return a - b;
}));

 这样可以得到结果

[3, 4, 6, 23, 42, 55, 63, 415]

 

你可能感兴趣的:(js,sort)