如何对整数数组进行排序

sort() 方法按字母顺序对数组进行排序。

但是,我们也可以使用它对整数数组进行排序。

要按数字排序,我们应该添加一个处理数字排序的新方法:

function sortNumber(a, b) {
  return a - b;
}
let numberArray = [170000, 65, 154];
numberArray.sort(sortNumber);
console.log(numberArray);

或者你可以简化函数:

numberArray.sort((a, b) => a - b); //正序排序
numberArray.sort((a, b) => b - a); //倒序排序

如果比较的数组不包含 Infinity 或者 NaN,则使用 sort() 函数。

比较两个值,sort() 将值发送到比较函数并根据返回值(负数、正数或者)对值进行排序。

  • 如果返回值为负,则 a 排在 b 之前。
  • 如果返回值为正,则 b 排在 a 之前。
  • 如果结果为 0,则没有任何变化。

例如,在比较 30 和 100 时,sort() 方法调用比较函数 (30, 100)。
该函数计算 30 100 (a b),由于结果为负数 (-70),所以 sort 函数会将 30 排序为小于 100 的值。

日期:2020-06-02 22:16:26 来源:oir作者:oir