js中遞歸調用自己能夠這樣:函數
function a1(n){
a1(n)
}
可是若是須要在參數n進行自增的狀況下判斷會出錯:遞歸
function a1(n){
if(n>10) return 'aaa';
n++;
a1(n)
}
此時執行 a1(1)時獲得的結果只能是 ‘undefined’
通過一番研究發現想到獲得正確的結果 ‘aaa’
則須要這樣io
function a1(n){
if(n>10) return 'aaa';
n++;
return a1(n)
}
由於若是不在執行下一次a1時將其做爲結果返回,則第一輪執行a1時其實已經結束了,做爲後續執行的a1應該就會僅執行而沒有返回結果給任何函數或變量或方法,僅僅是執行了而已,而不會對第一次執行有任何影響。關於js回調方法 js遞歸時使用方法function