1. 程式人生 > >好的程式設計習慣(1)

好的程式設計習慣(1)

概述

我們程式設計師寫程式碼就是為了給別人看的嘛,所以程式碼易讀性很重要。這裡我總結一些看別人程式碼時覺得不錯的習慣,記錄下來,慢慢地向他們學習。

程式碼換行

有時候我們會寫出很長一行程式碼,雖然編輯器有換行功能,但是擠在一起會非常難看。

對於html,一個標籤太長了肯定是因為屬性多了,所以可以把每一個屬性進行換行,如下所示:

<div
  id="wrapper_wrapper"
  style="display: block;">
</div>

對於js,由於編輯器不會在多元運算子後面加分號,所以可以在多元運算子後面換行,如下所示:

(project.name && project.name.toLowerCase().indexOf(this.searchProject.toLowerCase()) !== -1) ||
  (project.creator.username &&
    project.creator.username.toLowerCase().indexOf(this.searchProject.toLowerCase()) !== -1));

需要注意的是,每次換行我們都要縮排一下。另外由於我們會常常換行,所以縮排2個空格比較合適。

容錯

在方法裡面,如果一個函式或者變數聲明瞭,但是沒有值,可能就會報錯,如下所示:

const haha = cb => cb();

const haha2 = a => console.log(a);

const haha3 = a => console.log(a.b);

// 執行haha()會報錯
haha();

// 執行haha2()不會報錯
haha2();

// 執行haha3()會報錯
haha3();

由於js是單執行緒的,所以一旦報錯,就不會執行後面的程式碼了。所以為了增加程式碼的健壯性,最好在可能報錯的地方加上判斷:

const haha = cb => {
  if(typeof cb === 'function') {
    cb();
  }
}
// 執行haha()不會報錯
haha();

const haha3 = a => {
  if(a) {
    console.log(a.b);
  }
}
// 執行haha3()不會報錯
haha3();

當然,多加的判斷肯定會對效能有影響,所以看自己權衡,如果肯定不需要判斷就不要加了。

const

能用const的時候一定要用const!!!