iT邦幫忙

DAY 15
0

Node.js 系列學習日誌系列 第 15

Node.js 系列學習日誌 #15 - 撰寫程式的風格指南 (Style Guide)

由於 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


上一篇
Node.js 系列學習日誌 #14 - REST 路由規則
下一篇
Node.js 系列學習日誌 #16 - 連接 MySQL 並實現 CRUD 操作 - 資料存取前的準備
系列文
Node.js 系列學習日誌30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言