由於 node.js 是 javascript 作為開發的語言,開發的過程遵照程式碼規範撰寫讓整個程式風格達到一致。不過當然許多的 js 寫法都會有不同的風格存在,若您找不到要照什麼規則編寫程式,那麼可以參考這篇簡易的風格指南作為開發上的基本基礎。
本章節將介紹 node.js 幾個常用的撰寫手法來做介紹:
字串引號
區塊括號
變數宣告
變數命名
函數命名
物件與陣列
相等的運算符號
條件判斷
嵌套閉包
字串引號
使用單引號,若物件是 json 格式,那麼就使用雙引號來定義 key, value
//錯誤示範
var name ="test01";
//正確寫法
var name = 'test01';
區塊括號
//錯誤示範
if (true)
{
console.log(“this is a book.”);
}
// 正確寫法
if (true) {
console.log(“this is a book.”);
}
變數宣告
使用一種對每一個變數做一個 var 宣告。
//錯誤示範
var ary = ["apple", "orange"],
price = [150, 125],
obj = {};
//正確寫法
var ary = ["apple", "orange"];
var price = [150, 125];
var obj = {};
變數命名
//錯誤示範
var str_user = "test01";
//正確寫法
var strUser = "test01";
函數命名
//錯誤示範
function get_Users() {
}
//正確寫法
function GetUser(){
}
物件與陣列
如果只有很小的資料為陣列的話,請將它寫在同一行,而當您的物件是包含 key, value 的形式時,則排列整齊讓閱讀起來更加容易
//錯誤寫法
var ary = [
"apple", "orange"
];
var person = { "name", "test01"
, "id": "abcd1234" };
//正確寫法
var ary = [ "apple", "orange" ];
var person = {
"name", "test01",
"id": "abcd1234"
};
相等的運算符號
//錯誤寫法
var index = 0;
if (index == '') {
console.log("nothing");
}
//正確寫法
var index = 0
if (index === '') {
console.log("nothing");
}
條件判斷
儘量不要將過多的判斷都塞在 if 裡面,請先將判斷部分在前面以變數方式先驗證,再將結果的 true, false 的答案擺在 if 裡面
//錯誤寫法
if (task.isPrivate() || task.isEnabled()) {
console.log("the task are private and enabled type");
}
//正確寫法
var isValid = (task.isPrivate() || task.isEnabled());
if (isValid) {
console.log("the task are private and enabled type");
}
嵌套閉包
在使用閉包的做法是,不要一直無限嵌套,因為這樣會使得程式過度雜亂
//錯誤寫法
setTimeout(function(){
obj.click(function(){
console.log("click...");
})
}, 3000);
//正確寫法
setTimeout(function(){
obj.click(fnObjClick);
},3000);
function fnObjClick() {
console.log("click...");
}
參考資料:
https://github.com/felixge/node-style-guide
http://nodeguide.com/style.html