Noob JavaScript关于循环+数组的欠读

时间:2016-08-18 17:22:27

标签: javascript arrays loops for-loop

我是编程新手并且这是一个Noob问题,但我找不到任何真正解释每个部分的线程。我知道如何创建for循环,但一些基本部分对我来说并不清楚。例如,是什么让total += v[i];做下一个动作10 + 20 + 30 + 40 + 50 = 150 我的意思是,如果我宣布total = 0;为什么每个值都不会删除先前的值?例如:循环运行,第一个值是10,然后20运行超过10,然后30运行超过20 ......而不是它保持数字并将它们加上10 + 20 ......并计算。

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

var v = [10,20,30,40,50];

var items = v.length;
total = 0;
for (var i = 0; i <items; i++){
    total += v[i];
}
var mean = total / items;
alert(mean);

4 个答案:

答案 0 :(得分:1)

你写&#34; var total = 0&#34;在开始时初始化变量&#34; total&#34;。这很重要,因为您希望在for循环之外使用它。如果你把它放在你的for循环中,每次循环重启时它都会回到0。

由于该值存在于循环范围之外,因此每次循环重新启动时都不会重置。这就是为什么每次打电话时总计增加的原因&#34;总计+ = v [i];&#34;。

答案 1 :(得分:0)

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

所以:total += v[i];total = total + v[i];

的含义相同

同样,total /= items;total = total / items;

相同

答案 2 :(得分:0)

循环是很方便的,如果你想一遍又一遍地运行相同的代码,每次都有不同的值。

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因为sum的起始值是0.你也想要在for循环之外声明var total = 0,因为如果你在每次循环重复该值时插入该循环内部total的结果为0。

答案 3 :(得分:0)

total += v[i]total = total + v[i]相同,所以这是一种简单的做法:

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

看一下这个resource,非常有用。