javascripts中的SORT函数在某些情况下无法返回正确的答案。
我使用http://jsconsole.com来测试一些例子:
[2, 10].sort()[2, 10]
[3, 10].sort()[10, 3]
[9, 10].sort()[10, 9]
[10, 11].sort()[10, 11]
我在windows xp,windows 2008上使用firefox和chrome进行了测试。
答案 0 :(得分:10)
我认为您将Java与JavaScript混淆,但它们是完全不同的编程语言。我几乎肯定代码是JavaScript。
JavaScript的默认排序功能按字符串值排序,而不是整数值。你必须手动完成后者,但这很简单:
[3,10].sort(function (a, b) { return a - b; });
答案 1 :(得分:1)
老实说,我没有JS经验,但似乎是按字符串值排序。 IE:1是一个比9更低的字符,所以任何以1开头的东西(甚至是11811891)都会少于'比9.