var power = function (base, exponent) {
var result = 1;
for ( i = 0; i < exponent; i++) {
result = result * base;
}
return result;
};
power(2, 2);
我实际上得到了一些,但我没有得到的是——for循环在那里和后面的行做了什么?(函数的力量)
var power = function (base, exponent) {
var result = 1;
for ( i = 0; i < exponent; i++) {
result = result * base;
}
return result;
};
power(2, 2);
我实际上得到了一些,但我没有得到的是——for循环在那里和后面的行做了什么?(函数的力量)
将一个数提高到一定的幂等于将该数乘以自身多次。所以 2 的 2 次方与 2 * 2 相同,2 的 3 次方与 2 * 2 * 2 相同,等等。for
循环只是实现了这一点。
该函数实际上通过将基数乘以自身多次以直接的方式计算幂函数。
该循环实际上将中间结果与到达运行中的基数相乘。从而计算result = (((1 * base) * base) * base) * ...
得到最终结果。
顺便说一句,为此有一个内置函数:(Math.pow
有关详细信息,请参阅 MDN)