Javascript +;=当您只需执行+;相反
我一直在看一个javascript教程来更新我的知识。 我只是需要一些关于他为什么决定使用这种代码“风格”的指导 基本上,有一个名为result的变量,它有一个空字符串(“”),我不太清楚他为什么使用(result+=…),而他也可以使用(result=…),在我尝试时它显示了相同的输出Javascript +;=当您只需执行+;相反,javascript,function,Javascript,Function,我一直在看一个javascript教程来更新我的知识。 我只是需要一些关于他为什么决定使用这种代码“风格”的指导 基本上,有一个名为result的变量,它有一个空字符串(“”),我不太清楚他为什么使用(result+=…),而他也可以使用(result=…),在我尝试时它显示了相同的输出 function mySentence(myName, myVerb){ var result = ""; result += myName + " " + myVerb + " towards the tre
function mySentence(myName, myVerb){
var result = "";
result += myName + " " + myVerb + " towards the tree.";
return result;
}
console.log(mySentence("Dale", "walked"));
vs
function mySentence(myName, myVerb){
var result = "";
result = myName + " " + myVerb + " towards the tree.";
return result;
}
console.log(mySentence("Dale", "walked"));
视频链接:
36:28:00:wordblanks我能想到的拥有它的唯一原因是作者希望能够在所有使用
+=
的初始声明之后重新排列一系列语句,而不必担心哪一个最初是第一个语句。例如:
var result = "";
result += "something";
result += "another thing";
result += "yet another thing";
…他们以后可能想交换东西的地方:
var result = "";
result += "another thing";
result += "something";
result += "yet another thing";
变量
result
设置为“”
,开头为空字符串
执行result=
操作时,变量将替换为新值。
但是当您执行result+=
时,变量不会被替换。它将与已经存在的值一起添加
例如,在代码中,如果变量在开始时设置为某个值,如
result=“答案是:
,那么这两种样式将产生不同的结果。result=
样式将返回Dale向树走去。
。然后结果+=
将返回答案是:Dale朝树走去。
我怀疑你在那里添加了一个额外的+
?(就在myName
之前)Edit:。在这种情况下,此人只是决定以这种方式编写代码。我不知道他为什么这样做,在JavaScript中也不需要这样做。在其他一些语言中,例如在Java中,如果可能没有定义result
,则有必要使用它。您的意思是您可以使用=
来代替:var result;结果=指向树的myName+“”+myVerb+”代码>或只是var result=myName+“”+myVerb+”指向树。“
x+=y
相当于x=x+y
。很明显,为什么您可能更喜欢+=
而不是重复x
…?!