版权声明:随意转载,转载请注明出处。 https://blog.csdn.net/qq_36258516/article/details/85778211
JavaScript学习笔记
关于数组sort()函数的使用
通常规定,对于两个元素x
和y
,如果认为x < y
,则返回-1
,如果认为x == y
,则返回0
,如果认为x > y
,则返回1
,这样,排序算法就不用关心具体的比较过程,而是根据比较结果直接排序。
/*与C语言类似,可以直接定义cmp函数*/
var arr = [1,46,8,4,4,1,1];
function cmp1(x,y){
return x>y?1:-1;
}
arr.sort(cmp1);
console.log(arr);/*[ 1, 1, 1, 4, 4, 8, 46 ]*/
function cmp2(x,y){
return x<y?1:-1;
}
arr.sort(cmp2);
console.log(arr);/*[ 46, 8, 4, 4, 1, 1, 1 ]*/
还可以直接在sort()中定义比较函数。
var arr = [1,46,8,4,4,1,1];
arr.sort(function (x,y) {
return x>y?1:-1;
})
console.log(arr);/*[ 1, 1, 1, 4, 4, 8, 46 ]*/
arr.sort(function (x,y) {
return x<y?1:-1;
})
console.log(arr);/*[ 46, 8, 4, 4, 1, 1, 1 ]*/