我在下面的代碼中努力瞭解這個計算是return base * power(base, exponent - 1);
。底座再乘以具有底座的power
功能嗎?有人可以幫助我理解此代碼中發生了什麼?
var power = function(base,exponent){
if(exponent === 0){
return 1;
} else {
return base * power(base, exponent - 1);
}
};
power(2,2);
這是否意味着return base = 2*(2,2-1)
?
這是一個完整的答案。但僅供參考,這遠不止於速度慢,當需要性能時,函數調用實際上非常昂貴。除此之外,這僅適用於指數爲正整數。 – 2012-03-02 15:12:24