程序是寫給人讀的,只是偶爾讓計算機執行一下
1.1 縮進層級
(1) 使用制表符進行縮進
一個縮進層級是一個制表符,兩個縮進層級為兩個制表符。
缺點:系統對制表符解釋不一樣,不同系統下同一編輯器對制表符展示不一樣
(2) 使用空格符進行縮進
建議選擇4個空格表示一個縮進
優點:所有系統和編輯器對空格符展示一致。
1.2 語句結尾
省略分號情況下,JS有自動分號插入機制ASI,大多數都會正確插入分號。
不過,為防止錯誤,建議永遠不要省略分號。
1.3 行的長度
將代碼行長度限定在80個字符
1.4 換行
通常會在運算符后換行,下一行會增加兩個層級的縮進。
if ( flag && selected && selectTrain && selectFlight &&
noPlans) {
}
當給變量賦值時,第二行位置應當和賦值運算符的位置保持對齊
var result = flag + selected + selectTrain + selectFlight +
noPlans;
1.5 空行
審慎使用空格
1.6 命名
駝峰命名法
1.6.1 變量和函數
函數名語義化
避免使用沒有意義的命名。
函數和方法命名示例:
can //返回一個布爾值
has //返回一個布爾值
is //返回一個布爾值
get //返回一個非布爾值
set //用來保存一個值
1.6.2 常量
var MAX_COUNT = 10;
var URL = '';
1.6.3 構造函數
第一個字母大寫
Person
1.7 直接量
未聲明的變量,聲明了為賦值的變量。typeof返回都是undefined
var person;
typeof person ==> undefined
typeof foo ==> undefined
var name = undefined;
typeof name ==> undefined;
通過禁止使用特殊值undefined,確保只有在變量未聲明時會返回undefined。