8
出於好奇,究竟什麼規則適用於此?爲什麼-1在Javascript中的-Infinity之前排序?
alert([-Infinity, -1, Infinity, 0, 1].sort());
輸出:-1, -Infinity, 0, 1, Infinity
的jsfiddle:http://jsfiddle.net/8tVGb/
它是如何得到負無窮-1和0之間的排序?
出於好奇,究竟什麼規則適用於此?爲什麼-1在Javascript中的-Infinity之前排序?
alert([-Infinity, -1, Infinity, 0, 1].sort());
輸出:-1, -Infinity, 0, 1, Infinity
的jsfiddle:http://jsfiddle.net/8tVGb/
它是如何得到負無窮-1和0之間的排序?
如果您不使用自定義比較功能,sort
總是將項目轉換爲字符串並按字典順序排序。使用
….sort(function(a,b){ return a-b; })
是啊,我的錯誤:) –
只是好奇,但不會'-1 - -infinity'產量NAN或負無窮大或其它一些無意義的結果在JavaScript?所以對於無窮大和NaN的'a-b'不是好的? –
@SoftwareMonkey:Nope,'-1 - -Infinity'產生'Infinity',它具有*一個意義 - 它大於零,所以'b'應該在'a'之前。無限比較好,只有'NaN'會導致問題。 – Bergi