Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Noob JavaScript关于对循环的理解+;排列_Javascript_Arrays_Loops_For Loop - Fatal编程技术网

Noob JavaScript关于对循环的理解+;排列

Noob JavaScript关于对循环的理解+;排列,javascript,arrays,loops,for-loop,Javascript,Arrays,Loops,For Loop,我对编程还不熟悉,这是一个很难回答的问题,但我找不到任何线索能真正解释每一部分。我知道如何创建for循环,但有些基本部分我不清楚。例如,total+=v[i]执行下一个操作10+20+30+40+50=150 我的意思是,如果我声明total=0为什么每个值都不删除上一个值?e、 g:循环运行,第一个值是10,然后20运行10,然后30运行20。。。取而代之的是保留这些数字并将它们相加10+20…然后计算 为什么我不需要写var total=0 var v=[10,20,30,40,50]; v

我对编程还不熟悉,这是一个很难回答的问题,但我找不到任何线索能真正解释每一部分。我知道如何创建for循环,但有些基本部分我不清楚。例如,
total+=v[i]执行下一个操作10+20+30+40+50=150
我的意思是,如果我声明
total=0为什么每个值都不删除上一个值?e、 g:循环运行,第一个值是10,然后20运行10,然后30运行20。。。取而代之的是保留这些数字并将它们相加10+20…然后计算

为什么我不需要写var total=0

var v=[10,20,30,40,50];
var项目=v.长度;
总数=0;
for(var i=0;i您在开始时写入“var total=0”以初始化变量“total”。这一点很重要,因为您希望在for循环之外使用它。如果将它放入for循环中,则每次循环重新启动时,它都会返回到0


由于该值不在循环的作用域内,因此不会在每次循环重新启动时重置。这就是为什么每次调用“total+=v[i];”时,总数都会增加的原因.

Javascript,在许多其他语言中定义了
+=
运算符以及其他诸如
-=
*=
\=
等。所有这些运算符都对变量的当前值执行操作

所以:
total+=v[i];
的意思与
total=total+v[i];


类似地,
total/=items;
total=total/items;

循环非常方便,如果您想反复运行相同的代码,每次都使用不同的值

for (statement 1; statement 2; statement 3) {
    code block to be executed
}
语句1在循环(代码块)开始之前执行

语句2定义了运行循环的条件(代码块)

每次循环(代码块)执行后,都会执行语句3。 我们需要循环,因为你不想自己做100或1000次相同的事情。你说我们需要循环来添加数字,当我们可以添加10+20…你可以添加10+20+30+40…但是你不能添加100万个数字。 另一种想法是我们使用循环,因为我们通常不知道数组的值

total+=v[i];
等于
total=total+v[i];


您写入
var total=0
是因为总和的起始值是0。您还想在for循环外部声明
var total=0
,因为如果每次在该循环内部插入,该循环将重复
total
的值将是0。

total+=v[i]
total=total+v[i]相同
这是一种简单的方法:

var helper = total + v[i]
total = helper

看看这个,它非常有用。

total+=v[i];是total=total+v[i]的缩写;我很乐意为您提供帮助,但这是一个包含大量答案的问题,不幸的是,这不在堆栈溢出问题的指导原则范围内。请参阅javascript指南/教程/课程介绍,他们应该了解所有这些内容以及许多其他内容。
var
关键字用于dete终止定义变量的范围。这不是一个要求,但在您的示例中,
total
是一个全局字段。您可以阅读它。
var helper = total + v[i]
total = helper