题目:
编写一个比较数字大小的函数(min,即实现求最小值的函数),它可以接收任意参数的函数,完成比较[2, 4, 1, -1, 56, 3, -7]中数字的大小,并将最小值结果输出在页面上。
思路:
-
比较大小(min)函数改写成可接收任意参数的函数;
-
利用arguments.length来确定参数个数, 利用arguments[i]获得相应的参数值;
-
每次比较都将最小值保存到一个变量中,最后将其返回;
-
用apply方法将参数一次性的传递进去,并输出。
解答:
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8" />
<title></title>
</head>
<body>
<script>
var arr=[2,4,1,-1,56,3,-7];
//可接收任意参数的函数
function min(){
var minNum='';
for(var i=0;i<arguments.length;i++){
if(minNum===''){
minNum=arguments[0];
}else if(minNum>=arguments[i]){ //将最小值保存到一个变量中
minNum=arguments[i];
}
}
return minNum;
}
document.write(min(2,4,1,-1,56,3,-7));
//用apply方法将参数一次性的传递进去
document.write(min.apply(null,arr));
</script>
</body>
</html>
201803090110-11