JavaScript 是一門弱類型語言,正因如此導致寫法五花八門,這裏整理了一些在編寫代碼時需要注意的事項
通用規範
文件編碼
爲了避免內容亂碼,統一使用 UTF-8
編碼保存。
在文件結尾處,保留一個空行。
代碼檢測
開啓 eslint
代碼規範和錯誤檢查。
在嚴格模式模式下編碼
'use strict';
類型規範
-
js 數據類型有 string、number、boolean、null、undefined、array、function 和 object 這幾種,不同數據類型有不同的存儲方式,也對應有不用的使用方法,對於數據賦值要注意以下幾點
- 初始值類型要明確
- 不要隨意變換類型
-
類型檢測
優先使用 typeof
。對象類型檢測使用instanceof
。null 或 undefined 的檢測使用 == null。 -
字符串開頭和結束使用單引號
'...string...'
命名規範
-
變量命名採用小駝峯命名,如:addUser password studentID
-
常量命名採用單詞所有字母大寫,並用下劃線分隔,如:FORM_NAME
-
對於對象、函數、和實例採用小駝峯(camelCase)命名法
// 對象 let isObject = {}; // 函數 function isFun(){ ... }; // 實例 let myBbj = new Object(); web前端開發資源Q-q-u-n: 767273102 ,內有免費開發工具,零基礎,進階視頻教程,希望新手少走彎路
* 對於類命名或者構造函數,採用大駝峯命名 User() DateBase()
```
// 類
class Point {
...
};
// 構造函數
function User(options) {
this.name = options.name;
}
let myBbj = new User({
name: 'yup'
});
```
## 代碼規範
### 縮進
統一使用`兩個空格縮進`,不推薦使用 tap 縮進。
### 引號
統一使用`單引號`。
### 換行
每個獨立語句結束後必須換行。
### 分號
不得省略語句結束的分號
### 代碼塊
使用花括號包裹所有的多行代碼塊。
*單行 if 語句也必須使用花括號括住*
// 推薦
if (true) {
// TODO …
}
// 不推薦
if (true) // TODO …
### 使用全等符號
在等號表達式中使用類型嚴格的 `===`和`!==`。使用 === 可以避免等於判斷中隱式的類型轉換。
// 推薦
if (age === 30) {
// …
}
// 不推薦
if (age == 30) {
// …
}
## 註釋規範
### 單行註釋
使用 `//` 作爲單行註釋。在評論對象上面另起一行使用單行註釋。在註釋內容前插入一個空格。
// 單行註釋
### 多行註釋
以`/*`開頭,`*/`結尾,註釋內容前後加一個空格
/*
- 第一行註釋
- 第二行註釋
*/
/* 另外一種寫法 */
### 方法註釋
函數(方法)註釋也是多行註釋的一種,但是包含了特殊的註釋要求,關鍵方法必須加註釋。
/**
- 方法功能描述
- @param {*} 參數
- @param {*} 參數
- @param {*} 參數
- @param {*} 參數
- @return 返回值
*/
web前端開發資源Q-q-u-n: 767273102 ,內有免費開發工具,零基礎,進階視頻教程,希望新手少走彎路
### TODO 註釋
使用 // TODO: 標註問題的解決方式。
function Calculator() {
// TODO: total should be configurable by an options param
}