function factorial(num) {
if(num <=1){
return 1;
}else{
return num*factorial(num-1);
}
}
alert(factorial(3)); //6
安全起见,上述例子可写成:
function factorial(num) {
if(num <=1){
return 1;
}else{
return num*arguments.callee(num-1);
}
}
alert(factorial(3)); //6
//arguments.callee 是获取当前调用函数的本体
本文介绍了一种使用JavaScript通过递归方式实现阶乘函数的方法,并对比了两种不同的递归调用方式,一种直接调用自身函数名,另一种通过arguments.callee属性来调用。

被折叠的 条评论
为什么被折叠?



