+=
означает «возьмите предмет слева, добавьте его к нему и сохраните результат в предмете слева».Левая часть вашего +=
является литералом (первая - '<div id="leftbio" class="left-float">
).Вы не можете присваивать литералам.
Другими словами, a += b
в основном означает a = a + b
.Вы можете увидеть, как это не работает, если a
является литералом, а не переменной.
Вы просто хотите +
там:
var addhtml = '<div id="leftbio" class="left-float">'
+ '<div id="bioname">e["screen_name]</div>'
+ '<div id="biophoto"><img src="e["profile_image_url"]"/></div>'
+ '<div id="biodetails">e["description"]</div>'
+ '</div>';
console.log(addhtml);
Чтобы дать вам представление оразница между +
и +=
:
var a, b;
a = "foo";
b = a + "bar"; // Doesn't modify `a`
console.log(a); // "foo"
console.log(b); // "foobar"
и
var a, b;
a = "foo";
b = a += "bar"; // Modifies `a` (assigning the result to `b` is unusual -- very -- but valid)
console.log(a); // "foobar" - note it's changed
console.log(b); // "foobar"
Не по теме :
Я также рекомендовал бы сделать отступ для последующих строк оператора присваивания, но это просто стиль:
var addhtml = '<div id="leftbio" class="left-float">'
+ '<div id="bioname">e["screen_name]</div>'
+ '<div id="biophoto"><img src="e["profile_image_url"]"/></div>'
+ '<div id="biodetails">e["description"]</div>'
+ '</div>';
console.log(addhtml);