javascript
我喜欢的JavaScript编程风格
本文為《編寫可維護的JavaScript》讀書筆記
1、變量
變量名遵守駝峰大小寫命名法
命名前綴可為名詞,這樣可與函數名區分
常量利用大寫字母和下劃線(用來分隔單詞)來命名
所有變量聲明放在函數頂部
函數頂部使用單var語句聲明變量, 不同變量之間使用 "," 分隔開
2、函數
先聲明函數然后使用函數
-
函數調用寫法推薦:
doSomthing(); //在函數名和左括號之間沒有空格,與塊語句區分開來
-
立即執行函數
var value = (function(){...})(); //將函數用一對圓括號包裹起來,增強代碼的可讀性
3、null
適用場景:
初始化變量,它可能賦值為一個對象
用來與已經初始化的變量(可以是也可以不是一個對象)比較
當函數的參數期望是對象時,用作參數傳入
函數返回值為對象時,用作返回值傳出
不適用場景
不要用null來檢測是否傳入某個參數
不要用null來檢測一個未初始化的變量
4、undefined(被初始化變量的初始值,表示這個變量等待被賦值)
避免使用undefined
變量為聲明,可將其賦值為null
5、注釋
注釋與語句不在同一行時,注釋之前需要空行
在同一行,注釋和代碼之間需要空行
添加注釋的原則:
難于理解
代碼看上去有錯誤,實際沒有
瀏覽器特性hack時(例如,原生js綁定事件)
關于注釋,推薦使用插件DocBlockr
6、語句
不論塊語句包含多行代碼還是單行代碼,都應當是使用花括號
塊語句包括:
if
for
while
do...while
try...catch...finally
塊語句間隔風格推薦:
if (condition) {} //在括左圓括號之前和右圓括號之后各添加一個空格
7、case語句的連續執行問題(在switch語句中執行完一個case之后繼續執行下一個case):
switch (condition) {case "first":case "second"://代碼break;default://代碼}case連續執行可以有意為之,但是需要添加注釋
8、with:禁止使用
9、for循環注意事項:盡可能避免使用continue
10、for-in循環
不僅遍歷對象的實例屬性,而且遍歷從原型繼承過來的屬性
最好使用 hasOwnProperty 來為for-in循環過濾出實例屬性
禁止用來遍歷數組成員
11、嚴格模式
不推薦在全局作用域內使用。如果團隊成員文件合并,可能會讓團隊其他成員的代碼報錯
推薦函數內部,即布局作用域內使用
12、相等
兩個等號判斷相等,容易出現強制類型轉換
推薦使用三個等于號用來判斷相等
13、原始包裝類型
`var name = new String('Nicholas');`避免使用
參考資料:《編寫可維護的JavaScript》
總結
以上是生活随笔為你收集整理的我喜欢的JavaScript编程风格的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: RTSP学习笔记(2)live555
- 下一篇: 【VMware vSAN 6.6】2.5