function jc(sum) { if(sum <= 1) { return 1; } else { console.log(sum);//依次输出4,3,2 return sum * arguments.callee(sum - 1);//想知道这段代码是怎么运行的。为什么arguments.callee(sum - 1)会有值。 } }jc(4);
1 回答
已采纳
学习js
TA贡献85条经验 获得超55个赞
arguments.callee在哪一个函数中运行,它就代表哪一个函数.
在匿名函数中有时会需要自己调用自己,但是由于是匿名函数,没有名子,无名可调。
这时就可以用arguments.callee来代替匿名的函数
在这段代码里应该就带jc这个函数,所以jc(4)就是算4的阶乘
添加回答
举报
0/150
提交
取消