Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/469.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
Javascript 为什么这个for循环使用+;=?_Javascript_For Loop - Fatal编程技术网

Javascript 为什么这个for循环使用+;=?

Javascript 为什么这个for循环使用+;=?,javascript,for-loop,Javascript,For Loop,我很难理解为什么这个for循环是text+=cars[I]…,而不仅仅是text=cars[I]… 这是完整的脚本 var cars=[“宝马”、“沃尔沃”、“萨博”、“福特”]; 变量i,len,text; 对于(i=0,len=cars.length,text=”“;i JavaScript 101 < /Cord>类型的问题发布答案。JavaScript程序员应该知道什么是代码> += 是在他们的JavaScript编程旅程的第一个小时内:P

我很难理解为什么这个for循环是
text+=cars[I]…
,而不仅仅是
text=cars[I]…

这是完整的脚本

var cars=[“宝马”、“沃尔沃”、“萨博”、“福特”];
变量i,len,text;
对于(i=0,len=cars.length,text=”“;i”;
}
document.getElementById(“demo”).innerHTML=text

操作符+=如:x+=y与写入x=x+y是一样的。在您的示例中,cars数组中的每个项都被添加到一个新变量text中,并在它们之间插入一个“br”标记。它应该列出数组中列出的所有汽车,一辆比另一辆高。如果您只使用=运算符,“text”变量将被覆盖多次,直到循环结束,因此您将只看到条目“Ford”,因为它是数组中的最后一个条目

=
是分配

+=
是赋值和加法


所以如果
text+=“abc”

text
最初是
def

结果将是
defabc


在你的情况下,结果是

宝马
沃尔沃
萨博
福特
使用+= 输出是 宝马 沃尔沃汽车 萨博 福特

基本上,由于它是一个for循环,在每次迭代中,文本的值都被构建为 宝马
沃尔沃
萨博
福特

如果将+从脚本中删除 在每次迭代中,文本的值将被car[i]替换
变量文本的结束值将是Ford

试试看。如果它是
text=…
,那么
text
将只反映最终迭代。不确定
+=
的哪一部分会让您困惑<代码>文本+=汽车
。。。。是
text=text+cars
。。。而
'string1'+'string2'
会产生
string1string2
-你知道
+=
的作用吗?@JaromandaX,相信你有最好的评论。请考虑把它变成一个可以接受的答案吗?@ AsasabaLa-我不相信为我认为是“代码> JavaScript 101 < /Cord>类型的问题发布答案。JavaScript程序员应该知道什么是代码> += 是在他们的JavaScript编程旅程的第一个小时内:P