我在下面的代码中努力了解这个计算是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