如果在函数内写上形参arguments,结果输出是0
来源:7-7 编程练习
幸运菜鸟
2020-10-15 20:34:10
在这里输入
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>arguments</title> </head> <body> <script type="text/javascript"> function Count(arguments){ var sum = 0; for(var i in arguments){ var sum=sum+arguments[i]; } return sum; } alert(Count(2,3,4,5,6)); </script> </body> </html> //为什么写上形参反而结果不对了呢?
1回答
同学你好,当arguments写在形参处,只能传递数组中的一个数,可以打印看下:
所以,这时候无法使用for in 去循环遍历,因此直接输出sum的值,即0;
arguments实际上是当前函数的一个内置属性,因此建议在函数内部使用:
效果:
相似问题