JavaScriptのセミコロン挿入ルール
from Effective JavaScript
セミコロン挿入の第1ルール
セミコロンが挿入されるのは}の前
1個以上の改行の後
プログラム入力の末尾
セミコロン挿入の第2ルール
セミコロンが挿入されるのは、次の入力トークンを字句解析できないとき
code:js
let a = 'test'
const b = 'test B'
a = b; // セミコロン
1, 2, 3.forEach(key => key * 2) // これはOK
code:js
let a = 'test'
const b = 'test B'
a = b // セミコロンなし
1, 2, 3.forEach(key => key * 2) // Uncaught TypeError: b(1 , 2 , 3).forEach is not a function
code:js
a = b1, 2, 3.forEach(key => key * 2) // セミコロンがないとこう解釈される