欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JS中遞歸函數(shù)

 更新時間:2016年06月17日 11:08:42   作者:小碼農(nóng)雯  
編程語言中,函數(shù)Func(Type a,……)直接或間接調(diào)用函數(shù)本身,則該函數(shù)稱為遞歸函數(shù)。遞歸函數(shù)不能定義為內(nèi)聯(lián)函數(shù)。這篇文章主要介紹了JS中遞歸函數(shù)的相關資料,需要的朋友可以參考下

編程語言中,函數(shù)Func(Type a,……)直接或間接調(diào)用函數(shù)本身,則該函數(shù)稱為遞歸函數(shù)。遞歸函數(shù)不能定義為內(nèi)聯(lián)函數(shù)。

遞歸函數(shù):

function factorical(num){
  if(num<=1){
    return 1;
  }
  else{
    return num*factorical(num-1);
  }
}
factorial(2)//2

這個遞歸函數(shù)就是用函數(shù)來調(diào)用函數(shù)本身,但是這樣真的好嗎,好 接下來看這里

var another=factorical;
factorical=null;
console.log(another(2))//會報錯說 factorical not a function

這就是函數(shù)調(diào)用函數(shù)的弊端,那怎么解決呢,看下面

function factorical(num){
  if(num<=1){
    return 1;
  }
  else{
    return num*arguments.callee(num-1);
  }
}
var another=factorical;
factorical=null;
console.log(another(2))//2

以上 用arguments.callee去代替函數(shù)名,就可以確保函數(shù)不管怎么調(diào)用都不會出錯。

以上所述是小編給大家介紹的JS中遞歸函數(shù),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關文章

最新評論