javascript递归函数递归用法

发布时间:2019-09-11编辑:脚本学堂
本文介绍了javascript中递归函数的用法,在js脚本中实现递归调用,需要的朋友参考下。

在编写javascript代码脚本时,经常对函数进行自调用,也就是函数递归调用
javascript允许函数递归,但是有其自己的递归原则。

例如:
 

复制代码 代码示例:

<mce:script type="text/javascript">
<!--  
var type=6;  
function current(a)  
{  
 var i=0;  
 if(a==undefined)  
 {  
  current(1);  
  return;  
 }  
 if(document.getelementbyid("cursors"+a)==null&&type>a)  
 {  
     current(a*2);  
     return;  
 }  
 var value=1;  
  while(type>=value)  
  {  
     obj=document.getelementbyid("item"+value);  
     if(obj!=null)obj.classname='hidden';  
 
     obj=document.getelementbyid("cursors"+value);  
     if(obj!=null)obj.classname='behind';  
     i++;  
     value=math.pow(2,i);  
  }  
  if((obj=document.getelementbyid("item"+a))!=null)obj.classname='show';  
  if((obj=document.getelementbyid("cursors"+a))!=null)obj.classname='current';  

    }  
// -->
</mce:script> 

代码说明:
1、current函数,函数体内嵌套了递归,这里是单项运行,即递归一次后便用return结束运行。
2、也可以递归完后继续运行,javascript不排斥这个。
3、使用递归可以让代码看起来更完整,注意做好测试,以免陷入死循环。