js-ES6學習筆記-編程風格(2)


1、那些需要使用函數表達式的場合,盡量用箭頭函數代替。因為這樣更簡潔,而且綁定了this。

2、所有配置項都應該集中在一個對象,放在最后一個參數,布爾值不可以直接作為參數。

3、不要在函數體內使用arguments變量,使用rest運算符(...)代替。因為rest運算符顯式表明你想要獲取參數,而且arguments是一個類似數組的對象,而rest運算符可以提供一個真正的數組。

// bad
function concatenateAll() {
  const args = Array.prototype.slice.call(arguments);
  return args.join('');
}

// good
function concatenateAll(...args) {
  return args.join('');
}

4、注意區分Object和Map,只有模擬現實世界的實體對象時,才使用Object。如果只是需要key: value的數據結構,使用Map結構。因為Map有內建的遍歷機制。

let map = new Map(arr);

for (let key of map.keys()) {
  console.log(key);
}

for (let value of map.values()) {
  console.log(value);
}

for (let item of map.entries()) {
  console.log(item[0], item[1]);
}

5、總是用Class,取代需要prototype的操作。因為Class的寫法更簡潔,更易於理解。使用extends實現繼承,因為這樣更簡單,不會有破壞instanceof運算的危險。

6、如果模塊只有一個輸出值,就使用export default,如果模塊有多個輸出值,就不使用export default,不要export default與普通的export同時使用。

7、如果模塊默認輸出一個函數,函數名的首字母應該小寫。如果模塊默認輸出一個對象,對象名的首字母應該大寫。

 


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com