ECMAScript中的Array类有一个排序方法,即本文主要讨论的Array.prototype.sort(下面简称sort),它的调用是很简单的:
var arr = [11, 2, 1];
alert(arr.sort());
然而,上面程序的输出结果是 "1,11,2" ,而不是我们期望的"1,2,11",这是因为在默认情况下,sort方法排序时会把元素临时转成字符串再比较。要解决这个问题,就要给sort传递一个参数,这个参数是一个进行元素比较的函数,其原型如下:
function compareFn(x, y)