这篇文章主要讲解了“js递归函数调用本函数的方式是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“js递归函数调用本函数的方式是什么”吧!
创新互联建站主要从事成都网站制作、网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务通化县,十余年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792通常javascript代码可以与HTML标签一起直接放在前端页面中,但如果JS代码多的话一方面不利于维护,另一方面也对搜索引擎不友好,因为页面因此而变得臃肿,因此需要知道js函数的递归调用方法。
js函数的递归调用方法
1.通过函数自身名字递归调用
复制代码
functionsum(num){
if(num<=1){
return1;
}else{
returnnum+sum(num-1);
}
}
console.log(sum(5));//15
复制代码
这种通过函数名字调用自身的方式存在一个问题:函数的名字是一个指向函数对象的指针,如果我们把函数的名字与函数对象本身的指向关系断开,这种方式运行时将出现错误。
2.通过arguments.callee调用函数自身
复制代码
functionsum(num){
if(num<=1){
return1;
}else{
returnnum+arguments.callee(num-1);
}
}
console.log(sum(5));//15
varsumAnother=sum;
console.log(sumAnother(5));//15
sum=null;
console.log(sumAnother(5));//15
复制代码
这种方式很好的解决了函数名指向变更时导致递归调用时找不到自身的问题。但是这种方式也不是很完美,因为在严格模式下是禁止使用arguments.callee的。
js递归函数怎么自己调用自己
functionsetNum(i){
if(i>2){
i--;
returnsetNum(i);
}else{
returni;
}
}
$("#_div").click(function(){
varm=setNum(6);
$("#_div").html("点击"+m);
})
感谢各位的阅读,以上就是“js递归函数调用本函数的方式是什么”的内容了,经过本文的学习后,相信大家对js递归函数调用本函数的方式是什么这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联网站建设公司,,小编将为大家推送更多相关知识点的文章,欢迎关注!
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款