有人可以解释一下“var result = 1”在这个函数中做了什么吗?

时间:2015-05-19 13:24:24

标签: javascript return

任何人都可以用简单的英语解释“结果= 1”的含义实际上在这里干嘛?

我知道没有它,该功能不起作用,即使将其更改为0也会破坏它,但我不明白为什么。

var power = function(base, exponent) {
    var result = 1;
    for (var count = 0; count < exponent; count++)
        result *= base;
    return result;
};

6 个答案:

答案 0 :(得分:4)

循环内部取result的当前值,并乘以base(函数的参数)。由于0 * anything为0,而undefined * anythingNaN,因此需要首先将其设置为1

3 ^ 0 = 1

3 ^ 1(或,3 * 1)= 3

答案 1 :(得分:1)

它只是变量的初始化。 如果将其设置为0,则result *= base

实际上result = result * base将始终返回0

答案 2 :(得分:0)

它初始化变量result,因此您可以稍后在for循环中使用它。 result *= base;等于result = result * base;,因此可以使用。

答案 3 :(得分:0)

当你在循环中做一个求和时,你在循环外面开始变量,它的值是唯一一个永远不会改变结果的值。所以result = 0,因为任何数字+ 0都会产生这个数字。

在这种情况下,您正在进行乘法运算,因此您可以使用result = 1来对变量进行初始化,因为您可以将任意值乘以1并且永远不会改变结果

答案 4 :(得分:0)

它将变量result的初始值设置为1.如果删除它,则将base乘以空,如果设置为0,则将其乘以0.

答案 5 :(得分:0)

这是计算数字幂的函数。 你需要result = 1,以防零作为函数的指数传递; <{1}}将是返回的正确答案,因为1循环不会执行。