array.sort不使用超过1000的值

时间:2018-04-15 19:38:17

标签: javascript arrays

在我的示例firstArr中,.sort()方法正常工作,但是当我在secondArr上尝试.sort()时,它的值超过1000,它会中断。为什么是这样?我试图找到关于.sort()及其限制的文档,但我已经做空了。谢谢。

var firstArr = [ 1 , 10, 5, 15];
firstArr.sort();    // [1, 5, 10, 15];

var secondArr = [1000, 500, 999, 150];
secondArr.sort();    //[1000, 150, 500, 999];

1 个答案:

答案 0 :(得分:0)

您必须提供compareFunction才能正常工作。

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort



arr = [1, 2, 3, 4];
function ascent(a, b) {
  return a - b;
}
function descent(a, b) {
  return b - a;
}
arr.sort(ascent);
console.log(arr);
arr.sort(descent);
console.log(arr);