数组未按预期排序

时间:2015-10-16 12:23:11

标签: javascript sorting

我有以下数组

temp =  [1230, 900, 1000, 2130, 2400]

并使用temp.sort()按值对其进行排序,当使用console.log查看它时,它会给出以下内容

[1000, 1230, 2130, 2400, 900]

这应该像

那样完成
[900, 1000, 1230, 2130, 2400]

有什么不对或需要使用其他方法吗?

1 个答案:

答案 0 :(得分:1)

您应该使用HTTPConnection

compareFunction
  

如果未提供compareFunction,则通过将元素转换为字符串并按Unicode代码点顺序比较字符串对元素进行排序。例如,在数字排序中,9出现在80之前,但由于数字被转换为字符串,因此“80”以Unicode顺序出现在“9”之前。

var temp = [1230, 900, 1000, 2130, 2400];
temp.sort(function(a, b) {
  return a - b;
})

snippet.log(temp)
<!-- Provides the `snippet` object, see http://meta.stackexchange.com/a/242144/134069 -->
<script src="http://tjcrowder.github.io/simple-snippets-console/snippet.js"></script>