sort排序-1和1的区别

这个是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;

});
  • 6
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值