function getResult() {
var obj = new Object();
var sum = 0;
var average = 0;
var max = arguments[0];
var min = arguments[0];
for (i = 0; i <= arguments.length; i++) {
sum += i;
average = sum / arguments.length;
if (max < arguments[i]) {
max = arguments[i];
}
if (min > arguments[i]) {
min = arguments[i];
}
}
obj.sum = sum;
obj.max = max;
obj.min = min;
obj.average = average;
return obj;
}
var re = getResult(0, 2, 3, 4, 5, 6)
console.log(re);
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
4. 请使用arguments完成函数getResult,实现得到输入的所有的数值中的最小值、最大值、平均
数、总和等功能 <br>
作业描述:<br>
函数名:getResult <br>
函数调用方式:getResult(数值1,数值2,数值3,数值4.....) <br>
函数功能:返回值是一个对象,这个对象有sum, max, min, averages等属性,分别表示实参的
总和、最大值、最小值、平均数等 <br>
<script>
{
var arr=[1,2,3,4,5] //定义一个数组
var arr2=[1,2,3,4,5] //定义一个数组
console.log(getResult(arr)) //调用方法获得数组中的计算值
console.log(getResult(arr,arr2)) //调用方法获得数组中的计算值
}
{
var n1=1
console.log(typeof n1) //判断数据类型
var n2=1
var n3=1
var n4=1
var n5=1
var n6=1
var n7=1
//调用方法传入不定数量参数 计算值打印
console.log(getArrResult(n1,n2,n3,n4,n5,n6,n7))
}
function getResult(...arr){
//该方法接收了数组
//...arr表示可变参数,即为不确定传入多少个参数,可以用...表示
//最后接受进来的数据是一个数组
var num=0
var sum=0
var max=arr[0][0]
var min=arr[0][0]
for (var i=0;i<arr.length;i++){
//判断 传入的每个数据的值 并加以计算
for (var j=0;j<arr[i].length;j++){
//将传入的arguments数组中 的每个值 进行计算
sum=sum+arr[i][j] //计算总和
max=max>arr[i][j]?max:arr[i][j] //计算最大值
min=min>arr[i][j]?min:arr[i][j] //计算最小值
num++ //计算数据总量
}
}
console.log("传入一个数组,数组长度是:"+num)
var avg=sum/num //计算平均值
var result={
sum:sum,
avg:avg,
max:max,
min:min
}
return result
}
function getArrResult(...arr){
//该方法接受普通数据
//...arr表示可变参数,即为不确定传入多少个参数,可以用...表示
//最后接受进来的数据是一个数组
var num=0
var sum=0
var max=arr[0]
var min=arr[0]
for (var i=0;i<arr.length;i++){
sum=sum+arr[i]
max=max>arr[i]?max:arr[i]
min=min>arr[i]?min:arr[i]
num++
}
console.log("传入一些数值,数值的个数是:"+num)
var avg=sum/num
var result={
sum:sum,
avg:avg,
max:max,
min:min
}
return result
}
</script>
</body>
</html>
sum += i ?
应该是 sum += arguments[i] 吧