Javascript 有人能解释一下吗;var结果=1“;你在做什么?

Javascript 有人能解释一下吗;var结果=1“;你在做什么?,javascript,return,Javascript,Return,谁能用通俗易懂的英语解释一下“result=1;”到底在做什么 我知道没有它函数就不能工作,即使将它改为0也会破坏它,但我不明白为什么 var power = function(base, exponent) { var result = 1; for (var count = 0; count < exponent; count++) result *= base; return result; }; var幂=函数(基,指数){ var结果=1

谁能用通俗易懂的英语解释一下“result=1;”到底在做什么

我知道没有它函数就不能工作,即使将它改为0也会破坏它,但我不明白为什么

var power = function(base, exponent) {
    var result = 1;
    for (var count = 0; count < exponent; count++)
        result *= base;
    return result;
};
var幂=函数(基,指数){
var结果=1;
对于(变量计数=0;计数<指数;计数++)
结果*=基数;
返回结果;
};

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


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

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


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

它初始化变量
result
,因此您可以稍后在for循环中使用它<代码>结果*=基数等于
result=result*base就是这样的用法。

它初始化变量
result
,以便您以后可以在for循环中使用它<代码>结果*=基数等于
result=result*base就是这样的用法。

循环内部获取
结果的当前值,并将其乘以
基值(函数的一个参数)。由于
0*任何内容
都是0,而
undefined*任何内容
都是
NaN
,因此需要首先将其设置为
1

3^0=1


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

循环内部获取
结果的当前值,并将其乘以
基值(函数的参数)。由于
0*任何内容
都是0,而
undefined*任何内容
都是
NaN
,因此需要首先将其设置为
1

3^0=1


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

在循环中求和时,在循环外启动变量,其值是唯一不会改变结果的值。所以result=0,因为任何数字+0都会产生该数字


在这种情况下,您正在进行乘法运算,因此您将变量的值化为result=1,因为您可以将任何值乘以1,并且永远不会改变结果。当您在循环中进行求和时,您将在循环外启动变量,并且它的值是唯一永远不会改变结果的值。所以result=0,因为任何数字+0都会产生该数字


在这种情况下,您正在进行乘法运算,因此可以使用result=1对变量进行序列化,因为您可以将任何值乘以1,并且永远不会改变结果。它将变量的初始值设置为1。如果删除它,则等于将
base
与零相乘;如果设置为0,则等于将其与0相乘。

它将变量
result
的初始值设置为1。如果您删除它,则表示您将
base
乘以零;如果设置为0,则表示您将其乘以0。

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

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

如果只是声明了j,但没有初始化它,那么它将采用默认值“undefined”。这就是为什么这里的j=1这就是乘法的工作方式<代码>*=
表示:将运算符的左侧乘以右侧,然后将结果赋给左侧变量。要使其工作,在第一个循环未写入
var result=1
将抛出错误之前,左侧必须为1,而仅写入
var result
将使结果“未定义”,这就是为什么将其设置为1。无论如何,此函数与
Math.pow
完全等效。哦可以我现在明白了。不管乘法的结果是什么,我们都是把它乘以1!这就是为什么,当我把它改为0时,结果是0。知道了!我知道这是非常非常基本的,但它让我自由了。谢谢大家!@user3472810:Katana314下面的答案是正确的和最深刻的解释,你应该接受他的答案。如果只是声明了j,但没有初始化它,那么它将采用默认值“未定义”。这就是为什么这里的j=1。这就是乘法的工作方式<代码>*=
表示:将运算符的左侧乘以右侧,然后将结果赋给左侧变量。要使其工作,在第一个循环未写入
var result=1
将抛出错误之前,左侧必须为1,而仅写入
var result
将使结果“未定义”,这就是为什么将其设置为1。无论如何,此函数与
Math.pow
完全等效。哦可以我现在明白了。不管乘法的结果是什么,我们都是把它乘以1!这就是为什么,当我把它改为0时,结果是0。知道了!我知道这是非常非常基本的,但它让我自由了。谢谢大家!@user3472810:Katana314下面的答案是正确的和最深刻的解释,你应该接受他的答案。