程式撰寫規範
by 蘇德宙, 2012-05-20 23:21, 人氣(1713)
減少全域變數
一律使用 var
未宣告就使用的變數, ex
function foo() {
var a = b = 0; // b 未宣告,所以是global
}
變數宣告時同時初始化
1. 在函數一開始就宣告
- 被定義的變數只須尋找單一地方
- 避免困擾,任何地方宣告都等同於一開始就宣告的特性 (hoisting)
2. 初始化,提升可讀性
var a = 1, // a 是一個數字
b = "str"; // b 是一個字串
4 個空白
大括號
永遠都加,即使只有一行的敘述 (換行)
if (true) {
...
}
這可以避免行尾自動加 ; 號的問題,例如
function func() {
return // return undefined, 並且以下不會執行!
{
name: "tcsu"
}
}
PS: 同一行則不用加,例如 if (error) return false;
空格
為了閱讀上更清晰的目的,每個 , 號後面要留白
for (var i=0; i<max; i++) { ... }
命名
建構式微首字母大寫, var a = new Person(); 看名稱就可以區隔函數
變數: lastIndex (camel case,第二個詞以後的第一個字母大寫)
全域變數: gMax (g 開頭,容易被識別出來,盡量不使用全域變數)
常數: PI = 3.14 (全大寫)
private: _name (底線開頭,警告開發者不要直接使用)