// 錯誤:直接對字面值使用 +=
"<div>" += "內容"; // Uncaught ReferenceError: Invalid left-hand side in assignment
+= 是**複合指派運算子**,左側**必須是可寫入的變數/屬性**,不能是字面值或表達式結果。
let html = "";
html += "<div>";
html += "內容";
html += "</div>";
console.log(html);
const parts = [];
parts.push("<div>");
parts.push("內容");
parts.push("</div>");
const html = parts.join("");
console.log(html);
const content = "內容";
const html = `<div>${content}</div>`;
console.log(html);
${expr}、標籤函數。const html = "<div>" + "內容" + "</div>";
適合簡單單行拼接。
str = str + "x" 每次產生新字串,大量迴圈建議用陣列 push + join 或 StringBuilder (Java) / StringBuilder (C#)。StringBuilder,但現代引擎對 += 已優化,一般情況下直接用 let s = ""; s += ... 即可。+= 左側必須是變數。建議使用 **ES6 模板字面值 `...${var}...`** 或 **陣列 join**,語法清晰且效能佳。