这个返回undefined是为什么
来源:5-4 编程练习
Ting111
2020-11-28 23:10:34
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<script type="text/javascript">
// 补充代码
const sum=0;
function add(...arr){
for(i=0;i<arr.length;i++){
sum+=arr[i];
}
}
const arr=(1,2,3,4,5);
console.log(add());
</script>
</body>
</html>
3回答
同学你好,老师给你改的代码,是可以实现效果的:
代码如下:
// 补充代码
let sum=0;
function add(...arr){
for(i=0;i<arr.length;i++){
sum+=arr[i];
}
return sum;
}
// const arr=(1,2,3,4,5);
console.log(add(1,2,3,4,5));
这样写,循环中的arr就是接收到的所有参数组成的数组:
所以arr.length是有效的。
建议同学检查一下自己的代码,看下哪里写错了。或者把修改后的代码再粘贴出来,老师帮您检查一下。
祝学习愉快!
好帮手慕久久
2020-11-29
同学你好,问题解答如下:
由于调用add方法时,没有传参数,所以结果是0:
可做如下调整:
祝学习愉快!
好帮手慕久久
2020-11-29
同学你好,问题解答如下:
由于函数add中没有使用“return”设置返回值(没写:return XXX),所以调用add后,add会默认返回undefined,因此打印undefined:
改成如下形式,才会有打印内容:
效果如下:
祝学习愉快!
相似问题