本節書摘來自異步社群《編寫可維護的javascript》一書中的第1章,第1.4節,作者: 【美】nicholas c. zakas 譯者: 李晶 , 郭凱 , 張散集 更多章節内容可以通路雲栖社群“異步社群”公衆号檢視。
當一行長度達到了單行最大字元數限制時,就需要手動将一行拆成兩行。通常我們會在運算符後換行,下一行會增加兩個層級的縮進。比如(假定縮進為4個字元)下面這樣。
在這個例子中,逗号是一個運算符,應當作為前一行的行尾。這個換行位置非常重要,因為asi機制會在某些場景下在行結束的位置插入分号。總是将一個運算符置于行尾,asi就不會自作主張地插入分号,也就避免了錯誤的發生。
對于語句來說,同樣也可以應用下面這種換行規則。
在這段代碼中,if條件語句被拆分成了兩行,斷行在&&運算符之後。需要注意的是,if語句的主體部分依然是一個縮進,這樣更容易閱讀。
這個規則有一個例外:當給變量指派時,第二行的位置應當和指派運算符的位置保持對齊。比如:
這段代碼裡,變量anothersomethingelse和首行的something保持左對齊,確定代碼的可讀性,并能一眼看清楚折行文本的上下文。