js sort排序

这个是sort方法里的那个比较函数的特殊的返回值,比较函数的参数 a 和 b 代表数组里的两个元素,如果 a 小于 b,排序后的数组 a 在 b 前面,此时返回一个负数 (即上面的 return -1)如果 a 等于 b,排序后两者位置不变,此时返回 0 (即上面的 return 0)如果 a 大于 b,排序后 a 在 b 后面, 返回一个正数 (即上面的 return 1)
//比较函数一般简写成:

arr.sort( function(a,b){ return a-b // 升序 } );
arr.sort( function(a,b){ return b-a // 降序 } ); 

// 对应上面的解释好好想下,不难理解为什么这样写

var array = [4,8,128,1,64,2,16,32];
array = array.sort(compare);
function compare(value1, value2){
    if(value1 < value2){
           return -1;
      }else if(value1 > value2){
           return 1;
      }else{
           return 0;
      }
 }

以上代码等价于:

array = array.sort(function(value1, value2){
    return value1 < value2 ? -1 : 1;

});

这里用来记录下

以上内容转自https://blog.csdn.net/jbguo/article/details/82802065

猜你喜欢

转载自www.cnblogs.com/feijiediyimei/p/10048365.html
今日推荐