2014-02-23 55 views
1

为什么el+ = v[i]el+=v[i]不同? 我以为javascript不关心间距。 谢谢,任何答案都赞赏它。请不要搁置我的问题。我在这里试图学习。为什么空格在javascript中打破我的代码?

var v = ['a','b','c','d','e']; 
var el=""; 

for(i=0; i<v.length; i++){ 
    el+ = v[i]; // not working because of spaces, but why? 
    // el+=v[i]; // working 
} 
document.write(el); 
+1

我很困惑,为什么你会认为它会工作。你想做什么? el +不是有效的变量名称,尚未定义。不工作看起来像你正在试图把v [i]分配给el + – buzzsawddog

+0

el + = v [i]; //将返回abcde,但el + = v [i]将不起作用 – sopanha

+0

我给它空间,所以很容易读书。从来没有想过,JavaScript读取它的不同。 – sopanha

回答

5

+=是运营商。它不是+=的组合。

2
el+ = 

这是非法的操作员。

+= 
-= 
/= 
*= 

可用于例如

为你的情况。我会建议甚至避免循环做,而不是:

var el = v.join(''); 
+0

=是一个有效的赋值运算符,问题更多的是因为el +不是一个有效的变量名:-) – buzzsawddog

2

JavaScript引擎对“+ =”的解释与“+ =”不同。这就是它的写法。

相关问题