私はこの計算が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)
を意味しますか?
これは完全な答えです。しかし、ちょうどFYI、これははるかに遅いですが、関数呼び出しはパフォーマンスが必要なときには本当に高価です。そして、これは指数として正の整数に対してのみ機能します。 –