在编写JAVASCRIPT代码过程中,有时候会经常对函数进行自调用,也就是函数递归,
JAVASCRIPT允许函数递归,但是有其自己的递归原则,
ดู plaincopy ไปที่ clipboardprint หรือไม่
<mce:script type="text/javascript"><!--
ประเภท var=6;
ฟังก์ชั่นปัจจุบัน (ก)
-
วาร์ i=0;
ถ้า(a==ไม่ได้กำหนด)
-
ปัจจุบัน(1);
กลับ;
-
ถ้า(document.getElementById("เคอร์เซอร์"+a)==null&&type>a)
-
ปัจจุบัน(ก*2);
กลับ;
-
ค่า var=1;
ในขณะที่(ประเภท>=ค่า)
-
obj=document.getElementById("รายการ"+ค่า);
ถ้า(obj!=null)obj.className='hidden';
obj=document.getElementById("เคอร์เซอร์"+ค่า);
ถ้า(obj!=null)obj.className='หลัง';
ฉัน++;
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=6;
ฟังก์ชั่นปัจจุบัน (ก)
-
วาร์ i=0;
ถ้า(a==ไม่ได้กำหนด)
-
ปัจจุบัน(1);
กลับ;
-
ถ้า(document.getElementById("เคอร์เซอร์"+a)==null&&type>a)
-
ปัจจุบัน(ก*2);
กลับ;
-
ค่า var=1;
ในขณะที่(ประเภท>=ค่า)
-
obj=document.getElementById("รายการ"+ค่า);
ถ้า(obj!=null)obj.className='hidden';
obj=document.getElementById("เคอร์เซอร์"+ค่า);
ถ้า(obj!=null)obj.className='หลัง';
ฉัน++;
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>
请看ปัจจุบัน函数,函数体内嵌套了递归,这里是单项运行,即递归一次后便用return结束运行,
当然你也可以递归完后继续运行,JAVASCRIPT不排斥这个!
使用递归可以让你的代码看起来更完整,但是千万小heart不能让他陷入死循环