<!doctype html>
<html>
<head>
<title>标题</title>
<meta charset="utf-8">
<script>
function sort(arr,cmp){
//如果cmp是undefined
if(cmp===undefined){//就用:
//原装比较器:转字符串再比较
cmp=function(a,b){
return String(a)>String(b)?1:
String(a)<String(b)?-1:
0;
}
}
for(var r=1;r<arr.length;r++){
for(var i=0;
i<arr.length-r;
i++){
if(cmp(arr[i],arr[i+1])>0){
var t=arr[i];
arr[i]=arr[i+1];
arr[i+1]=t;
}
}
}
}
var arr=[12,2,123,23,1,3];
//Step1:自定义比较器函数
//function cmp(a,b){return a-b;}
function cmp(a,b){return b-a;}
//Step2:将比较器函数传入sort方法
arr.sort(cmp);
//sort(arr,cmp);
console.log(String(arr));
</script>
</head>
<body>
</body>
</html>
javascript数组之自定义比较器
最新推荐文章于 2022-08-28 16:26:22 发布