Coding Style
Table of Contents
#
Coding Style
##
條件判斷
在 PHP & JavaScript 中有許多邏輯判斷 當有許多條件要去檢查時, 一般來說就是用 if 一直寫下去 最後就造成下面的情況(以 PHP 為例)
if ($a === $b)
{
if ($c)
{
if ($c >= 10)
{
if ($d)
{
// do something
// ...
}
return;
}
return;
}
}
這樣下去就沒完沒了, 而且縮排會越來越多, 要看 code 也很不方便 所以假如就已作條件檢查來說 可以用以下的做法
// check condition 1
if ($a !== $b)
{
return;
}
// check condition 2
if (!$c || $c === '')
{
return;
}
// check condition 3
if ($c < 9)
{
return;
}
// check condition 4
if (!d)
{
return;
}
// do something
// ...
做個 反向思考 , 把不適合的條件列出再一一 return or 作處理 剩下的便是所需要的
從巢狀式結構變成區域式 結構也較為清晰 debug 也較容易
有時也會遇到應該用 switch 卻用 if 去一直加下去的情況
所以當 if 用到 3 個 以上時, 就要思考要用什麼敘述來達到目的比較好
也許可以用 switch
##
function
有時遇到很多 code 重複時, 我們可以抽離這些重複的部分, 把它放到一個 function 中 要用時在再去呼叫那個 function
##
以錯誤為優先處理
JavaScript
function doSomething(data) {
if (data.status === 'fail') {
// handle error
} else {
// handle ok
}
}