我正在學習JavaScript,其中一個練習是編寫一個權力函數。我也應該學習數學,因爲這肯定聽起來很愚蠢。
我直覺地知道$ 2^4 = 16 $,因爲$ 2 * 2 * 2 * 2 = 16 $。但通過閱讀功能,看來,它應該返回12,而不是16
如果我們插上數字,它應該是這樣的:$$ 2 *(2 *(4 - 1))= 12 $$
var power = function(base, exponent) {
if (exponent === 0) return 1;
return base * power(base, exponent - 1);
};
power(2,4);
===> 16
顯然我必須讀錯誤的功能。但是如何?
這是一個基本尾遞歸的例子,如果你有興趣。 – Argon