文章标签 ‘js数组排序’

javascript array sort用法

2013年8月6日 没有评论

sort是array对象自带的方法,可以对array中的元素按升序的方式进行排列。如果sort方法没有指定参数,那么array的元素会按照字符的编码数据进行排序。如果想对其他类型的元素进行排序,就需要自己实现一个比较函数作为参数传递给sort,此函数有两个参数a和b,当 a 大于 b 返回大于0的数,a 等于 b 返回0,否则返回一个小于0的值。

需要注意的是排序是在原array上进行的,不会生成副本。

例如一个array为[20,17,15,30,100],默认排序后的结果为100,15,17,20,30。可以看到并不是按照数值的大小排序,如果想要按照数值的大小排序,可以自己实现一个function,如:

function intSort(a, b) {
  return a - b;
}

var arr = [20,17,15,30,100];
arr.sort(intSort);

//或通过匿名函数的方式

arr.sort(
  function(a, b) {
    return a - b;
  }
);

//倒序排序
arr.sort(intSort).reverse();

另外如果想按照倒序排列,可以先对array进行sort,然后调用reverse方法即可。

无觅相关文章插件,快速提升流量