JavaScript -内部的JavaScript排序方法对数字数据进行排序- True或False

JavaScript - The internal JavaScript sort method sorts numeric data - True or False?

本文关键字:排序 JavaScript True False 内部 方法 数字 数据      更新时间:2023-09-26

JavaScript内部排序方法对数字数据进行排序-是真还是假?

如果没有提供compareFunction,则将元素转换为字符串并按字典顺序("字典"或"电话本",而不是数字)比较字符串,从而对元素进行排序。例如,按字典顺序,"80"在"9"之前,但按数字排序,"9"在"80"之前。

https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/sort

所以答案是False

似乎排序不太好…

[3,5,1,5,10,0,99,10,12].sort()
[0, 1, 10, 10, 12, 3, 5, 5, 99]  // result

但是你可以很容易地让它排序:

[3,5,1,5,10,0,99,10,12].sort(function(a,b) {return parseInt(a) > parseInt(b)})
[0, 1, 3, 5, 5, 10, 10, 12, 99] // result