请问下5-14中arguments的问题
我看了一位助教老师对某位同学的回复,助教老师用arguments可以很方便地获得传递进来的参数。下面是我写了个基本一样的程序。我想请问下,arguments[0]为什么不是multiplay.apply(window,data)的第一个参数'window'呢,arguments为什么默认就是data呢
非常感谢!
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>函数的间接调用</title>
</head>
<body>
<script>
// 在此处补充代码
var data = [3,4,2,1];
function multiply(){
var mul = 1;
for(var i=0;i<arguments.length;i++){
mul *= arguments[i];
}
return mul;
}
document.write(multiply.apply(window,data));
</script>
</body>
</html>0
收起
正在回答
3回答
apply中的第一个参数只的是一个对象,也就是谁来调用前面这个函数,并不包括在arguments里面。
组件化思想开发电商网页 18版
- 参与学习 人
- 提交作业 467 份
- 解答问题 4826 个
本路径带你通过系统学习HTML5、JavaScript、jQuery的进阶知识,不仅如此,还会学习如何利用组件化的思想来开发网页,知识点+案例,使得所学可以更好的得到实践。
了解课程

恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星