<script>
var f=(function(num){
if(num<=1){
return 1;
}else{
return num*arguments.callee(num-1);
}
});
console.log(f);
</script>
这是一个匿名函数。我想问,我要给这个匿名函数传参数要怎么传?比如传10.
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
f(10);
把等号右边最外面的()去掉也行,
加括号只是为了强制转化为函数表达式,
不过在等号右边就已经是函数表达式了,
不用在外面加一个括号。
arguments.callee!题主应该是写错了吧。
这种用法在红宝书上推荐为用来写递归,但是在ES5 严格模式中被废弃了
现在都不推荐这么写了
https://developer.mozilla.org...
现在函数的名字就是f。f(参数)。
两种函数声明方式:
1.var fn = function(){};
2.function fn(){};
还有一个特殊点的var fn1 = function fn2(){};
你可以试试特殊点的fn1、fn2哪个能调用访问这个函数。
直接传参就行了,例如f(5);
另外calle是什么鬼?callee吧
<script>
</script>
就像这样,直接传参数不就可以了
这么大的数,等于10的阶乘啊..