sort 方法不理解,老师可以讲一下吗
相关代码:
第三步,不理解
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>Math.random()</title>
</head>
<body>
<script>
//补充代码
// 第一步: 创建一个空数组, 用来接收后面的十个整数
var Arr = [];
// 第二步: 在0~100( 包括 0 和100) 之间的随机整数中, 获取十个整数, 放入创建的数组中
for (var i = 0; i < 10; i++) {
Arr.push(parseInt(Math.random() * 101));
}
// 第三步: 对数组进行降序排序
// 使用 sort 方法, b-a 就是从大到小排列
Arr.sort(function(a, b) {
return b - a;
})
// 第四步: 输出数组的最大值和最小值
document.write(Arr + '</br>' + '这组数中最大数是:' + Arr[0], '这组数中最小数是:' + Arr[9]);
</script>
</body>
</html>
28
收起
正在回答 回答被采纳积分+1
1回答
卡布琦诺
2021-02-21 17:41:34
同学你好,是不理解sort方法中,return b - a;排序原理是吗?其原理如下:
sort(function(a,b){
return b - a;
})
等价于
sort(function(a,b){
if(b < a) {
return -1;
}
if(b > a) {
return 1;
}
if(b == a) {
return 0;
}
})
(1)如果return返回-1,表示b小于a,数组排序中b会排在a之前
(2)如果return返回1,表示b大于a,数组排序中b会排在a之后
(3)如果return返回0,表示b与a相等,其位置保持不变
希望可以帮到你,祝学习愉快!
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星