我有以下数组
temp = [1230, 900, 1000, 2130, 2400]
并使用temp.sort()
按值对其进行排序,当使用console.log查看它时,它会给出以下内容
[1000, 1230, 2130, 2400, 900]
这应该像
那样完成[900, 1000, 1230, 2130, 2400]
有什么不对或需要使用其他方法吗?
答案 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>