为什么在Javascript中-Infinity之前-1排序?

时间:2013-07-31 01:39:27

标签: javascript sorting

出于好奇,这里适用的规则是什么?

alert([-Infinity, -1, Infinity, 0, 1].sort());

输出:-1, -Infinity, 0, 1, Infinity

JSFiddle: http://jsfiddle.net/8tVGb/


-Infinity如何在-1和0之间排序?

1 个答案:

答案 0 :(得分:12)

如果您不使用自定义比较功能,sort始终会将项目转换为字符串并按字典顺序排序。使用

….sort(function(a,b){ return a-b; })

另见How to sort an array of integers correctly