排序函数如何理解

来源:7-22 数组排序sort()

阿泰格

2015-07-24 05:51

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

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

为什么是返回 a-b

写回答 关注

2回答

  • 5i小灬ban
    2015-09-11 07:29:42
    已采纳

    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,由此实现了降序。

    希望对你有帮助

    阿泰格

    非常感谢!

    2016-01-19 21:45:52

    共 2 条回复 >

  • 寒江北去
    2015-07-24 08:27:24

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468060 学习 · 21891 问题

查看课程

相似问题