在编写javaSCRipT代码过程中,有时候会经常对函数进行自调用,也就是函数递归,
Javascript允许函数递归,但是有其自己的递归原则,
view plaincopy to clipboardPRint?
<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>
<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>