跳至主要内容

[JS] Variable

Code Style

變數建立

  • 總是使用 constlet 建立變數
  • 先用 const 定義完變數再用 let
  • 每個定義的變數都單獨使用一個宣告,不要用 , 一次建立多的變數
  • 不要使用 a=b=c ,這會導致產生不必要的全域變數
// bad
let a = (b = c = 1); // let 只會作用在 a ,其餘的 b, c 會變成全域變數

// good
let a = 1;
let b = a;
let c = a;

按強類型風格寫代碼

定義變量的時候就給他一個默認值,這樣方便閱讀代碼的人,他會在心裡有數,知道這些變量可能會當作什麼用:

let num = 0;
let str = '';
let obj = null;

變數命名

  • 使用小寫駝峰(camelCase)來命名物件(object)、函式(function)或實例(instances):
// good
const thisIsMyObject = {};
function thisIsMyFunction() {}
  • 使用大寫駝峰(PascalCase)來命名類別(class)或建構式(constructor):
// good
class User {
constructor(options) {
this.name = options.name;
}
}

const good = new User({
name: 'yup',
});
  • 在 JS 中慣例是以底線開頭當作 private 變數,因此不要隨意在開頭或結尾使用底線(underscore)
  • 對於會回傳布林值(Boolean)的變數以 isVal()hasVal() 命名。

23.2 Use camelCase when naming objects, functions, and instances 23.3 Use PascalCase only when naming constructors or classes 23.4 Do not use trailing or leading underscores 24.3 If the property/method is a boolean, use isVal() or hasVal().