Array.sort()
作者:互联网
sort() : 是对数组的元素进行排序,并返回一个数组。默认排序方式是根据字符串的Unicode码表的码点。
由于取决于具体实现,所以无法保证它的时间和空间复杂度。
arr.sort(compareFunction):
compareFunction is option parameter.
(1): 如果没有指明compareFunction,则元素会按照转换成字符串的诸个字符的Unicode码点进行排序。
“B”在“C”之前。
“80”在“9”之前,因为当80和9比较的时候,会先转换成字符串然后进行Unicode码点的比较。
(2):如果指明了compareFunction,则元素会按照该函数的返回值进行排序。
compareFunction(a, b) 返回值小于0 则a在b的前边
compareFunction(a, b) 返回值等于0 则a和b的相对位置发生不变
compareFunction(a, b) 返回值大于0 则b在a的前边
比较函数格式如下:
1 function compare(a, b){ 2 if(a > b){ 3 return 1; 4 } 5 if(a < b){ 6 return -1; 7 } 8 return 0; 9 }
要比较数字而非字符串
1 function compareNumbers(a, b){ 2 return a - b; 3 }
升序
function compareNumbers(a, b){ return b - a; }
降序
标签:sort,function,return,返回值,Array,排序,compareFunction 来源: https://www.cnblogs.com/bengbengbeng/p/10480590.html