JS中递归函数
编程语言中,函数Func(Typea,……)直接或间接调用函数本身,则该函数称为递归函数。递归函数不能定义为内联函数。
递归函数:
functionfactorical(num){
if(num<=1){
return1;
}
else{
returnnum*factorical(num-1);
}
}
factorial(2)//2
这个递归函数就是用函数来调用函数本身,但是这样真的好吗,好接下来看这里
varanother=factorical; factorical=null; console.log(another(2))//会报错说factoricalnotafunction
这就是函数调用函数的弊端,那怎么解决呢,看下面
functionfactorical(num){
if(num<=1){
return1;
}
else{
returnnum*arguments.callee(num-1);
}
}
varanother=factorical;
factorical=null;
console.log(another(2))//2
以上用arguments.callee去代替函数名,就可以确保函数不管怎么调用都不会出错。
以上所述是小编给大家介绍的JS中递归函数,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!
热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下