为了账号安全,请及时绑定邮箱和手机立即绑定

排序函数如何理解

function sortNum(a,b) {
  return a - b;
 //升序,如降序,把“a - b”该成“b - a”
}

这个函数应该怎么去理解啊

为什么是返回 a-b

正在回答

4 回答

sortNum作为sort的参数规定了排序规则,当sortNum返回值为1时则颠倒a,b顺序,我们举个栗子来理解(注意原序列中a,b都是有既定顺序的):

假如原序列为1,2,3则第一次调用sort时对1,2进行排序,此时向sortNum传参:a=1,b=2(sortNum的两个参数a,b,a指当前序列中前面的数),若升序排列返回a-b,我们发现a-b小于1,说明顺序正确,不进行更改,若降序排列返回b-a,b-a值为1,说明当前顺序即1,2错误,颠倒顺序为2,1,由此实现了降序。

希望对你有帮助

7 回复 有任何疑惑可以回复我~
#1

湖泊丶

看问答看到这儿才算真的理解了,赞!
2015-12-10 回复 有任何疑惑可以回复我~
#2

阿泰格 提问者

非常感谢!
2016-01-19 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

排序函数如何理解

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信