javascript中怎么讀懂遞歸函數?
遞歸函數說通俗了就是函數自己調用自己。使用遞歸函數一定要注意,處理不當就會進入死循環。遞歸函數只有在特定的情況下使用 ,比如階乘問題:
function fa(num){
if (num<=1){
return 1;滿足條件就要跳出循環
}else{
return num*fa(num-1);
}
}
注意:遞歸函數中的變量名不要輕易改動,記住函數原理:自己調用自己,從后往前推。
最后一個建議是:如果要聲明一個遞歸函數,請慎用new Function這種方式,Function構造函數創建的函數在每次被調用時,都會重新編譯出一個函數,遞歸調用會引發性能問題——你會發現你的內存很快就被耗光了。