js中分號的討論

因爲js中又一個自動插入分號的機制,因此實際咱們在寫代碼的過程當中不多會關注分號的問題;如今的趨勢基本也就是不添加分號;甚至eslint的標準檢查模式中也禁止添加分號。es6

不過這裏仍是有一個些不常見的小坑bash

若是一個語句的開頭以「括號,方括號,正則開頭的斜槓,加號,減號」。實際使用中最常遇到的應該是括號開頭,好比js中的當即執行函數;可是隨着es6的使用範圍越來約廣泛,當即執行函數這種駭客機制也不多用到了。函數

下面舉個例子:spa

var a = 'hello'
// 這裏會報錯
(function() {
  console.log(arguments)
})(1,2,3)
// 這樣寫就不會報錯
;(function() {
  console.log(arguments)
})(1,2,3)
複製代碼

另外若是當即執行函數處於js文件的開頭也不會報錯eslint

(function() {
  console.log(arguments)
})(1,2,3)
var a = 'hello'
複製代碼
相關文章
相關標籤/搜索