ASI (Automatic Semicolon Insertion)
JavaScript 基本上在語句結尾時都要加上 ;(分號),當語句沒有加入分號時,就會受到 ASI 的規則影響
ASI規則:當語法併到上一行的時候會出現錯誤時,它會自動加上 ;(分號)。
1 | function callName(){ |
會因為 ASI 的規則變成下面這樣
1 | function callName(){ |
“不會” 發生 ASI 的規則:
- 新的一行是
(、[、/開始 (容易出錯的地方)
1 | var a = 1 |
- 新的一行以
+、-、*、%作開始 (會影響執行結果)
1 | var a = 2 |
- 新的一行以
,、.作開始 (需注意執行結果)
```
var a = 2
var b = a
.toString()
console.log(typeof b)
var a = 1
,b = 2 // b 一樣會 var 被宣告