成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

JS語句后加不加分號(hào)

OnlyLing / 3032人閱讀

摘要:?jiǎn)栴}前一陣子猛然想到一個(gè)問題有分號(hào)自動(dòng)補(bǔ)全機(jī)制在寫時(shí)我是習(xí)慣性在語句后面加上分號(hào)在塊語句后面不加分號(hào)。關(guān)于加不加分號(hào)的問題知乎上一些回答這個(gè)問題的大佬普遍意見是喜歡就好。

問題

前一陣子猛然想到一個(gè)問題,JS有分號(hào)自動(dòng)補(bǔ)全(ASI)機(jī)制,在寫JS時(shí)我是習(xí)慣性在語句后面加上分號(hào),在塊語句后面不加分號(hào)。那么如果沒有加分號(hào)的話,在什么情況下會(huì)出現(xiàn)問題?在JS語句后到底是應(yīng)該加分號(hào)還是不加分號(hào)?

解決問題

面對(duì)這個(gè)問題,我來了興趣。于是在網(wǎng)上查了一些資料。關(guān)于加不加分號(hào)的問題,知乎上一些回答這個(gè)問題的大佬普遍意見是,喜歡就好。嗯,很直接。
關(guān)于不加分號(hào)容易產(chǎn)生問題的地方,我在看了多個(gè)地方的貼子總結(jié)了一下,基本就三個(gè)地方出現(xiàn)問題比較多:
1)如果下一行的第一個(gè)token是 ( , [ , / , + , - 這五個(gè)字符之一的話, Javascript 將不會(huì)自動(dòng)在上一行句尾加上分號(hào)。所以,當(dāng)下一行的第一個(gè)token是以上字符時(shí),應(yīng)當(dāng)在上一行或者行首加上分號(hào)
2)continue、return、break、throw后自動(dòng)插入分號(hào)。所以當(dāng) return 出一個(gè)值,千萬不要將那個(gè)值與 return 不在同一行,不然返回的結(jié)果是 undefined 而不是你期望的值。
3)++ , -- 后綴表達(dá)式作為新行開始,會(huì)在行首自動(dòng)插入分號(hào),
關(guān)于我自己每回沒有在塊語句后面沒有加分號(hào),對(duì)于我這個(gè)強(qiáng)迫癥來說是不是不嚴(yán)謹(jǐn)?shù)膯栴},我也在一篇貼子中找到了答案, 那就是 {...} 屬于塊語句,而按照定義塊語句是不需要分號(hào)結(jié)尾的,不管是不是在一行 , 嗯,我果然沒有錯(cuò)。

總結(jié)

看了那么多貼子后,我感覺還是在語句后面加分號(hào)比較好,畢竟雖然麻煩一點(diǎn),但是看得舒服(個(gè)人感覺),而且可以避免一些不必要的問題。

參考鏈接:

知乎: https://www.zhihu.com/question/20298345
ASI機(jī)制: https://segmentfault.com/a/1190000004548664

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/106695.html

相關(guān)文章

  • JavaScript里的語句分號(hào)結(jié)尾是個(gè)選項(xiàng)嗎

    摘要:在以下的種情況是用回車或換行,是不會(huì)作自動(dòng)插入分號(hào)來讓語句作結(jié)尾。以下情況必用分號(hào)。但有例外,賦值時(shí)可以加分號(hào)是對(duì)的語法。 起因 這個(gè)文章一開始回覆于這篇回答中: javascript初級(jí)問題 也有之前的朋友寫信來問,因?yàn)樵谧x到我個(gè)人寫的一本電子書: 從ES6開始的JavaScript學(xué)習(xí)生活,繁體,gitbook。我在寫作風(fēng)格里有說明,這本電子書中的范例都是使用不用分號(hào)(;)作為代碼...

    stormzhang 評(píng)論0 收藏0
  • Javascript分號(hào),加還是不加

    摘要:本文同步自我的博客園關(guān)于這個(gè)問題,網(wǎng)上已經(jīng)有很多人討論過了,我先說說自己對(duì)這個(gè)問題的回答加但非必須有些人寫代碼,懶得加分號(hào),除非是迫不得已才勉強(qiáng)放一個(gè)分號(hào)上去。 本文同步自我的博客園:http://hustskyking.cnblogs.com 關(guān)于這個(gè)問題,網(wǎng)上已經(jīng)有很多人討論過了,我先說說自己對(duì)這個(gè)問題的回答:加!(但非必須) 有些人寫代碼,懶得加分號(hào),除非是迫不得已才勉強(qiáng)放一...

    Coding01 評(píng)論0 收藏0
  • JavaScript ASI 機(jī)制詳解

    摘要:最近在清理的未讀列表,看到了才知道了的,一種自動(dòng)插入分號(hào)的機(jī)制。這種行為被叫做自動(dòng)插入分號(hào),簡(jiǎn)稱。不過在省略分號(hào)的風(fēng)格中,這種解析特性會(huì)導(dǎo)致一些意外情況。規(guī)則標(biāo)準(zhǔn)定義的包括三條規(guī)則和兩條例外。規(guī)則一情況三就是為量身定做的。 TL;DR 最近在清理 Pocket 的未讀列表,看到了 An Open Letter to JavaScript Leaders Regarding Semico...

    frontoldman 評(píng)論0 收藏0
  • 編寫可維護(hù)的javascript

    摘要:為什么要編寫可維護(hù)的軟件生命周期的成本消耗在了維護(hù)上。相等具有強(qiáng)制類型轉(zhuǎn)換的機(jī)制。檢測(cè)字符串檢測(cè)數(shù)字檢測(cè)布爾值檢測(cè)檢測(cè)引用值引用值也稱為對(duì)象,檢測(cè)某個(gè)引用值的類型的官方最好的方法是使用運(yùn)算符。 為什么要編寫可維護(hù)的javascript? 軟件生命周期80%的成本消耗在了維護(hù)上。 幾乎所有的軟件維護(hù)者都不是它的最初作者。 編碼規(guī)范提高了軟件的可讀性,它讓工程師能夠快速且充分地理解新的代...

    singerye 評(píng)論0 收藏0
  • 編寫可維護(hù)的javascript

    摘要:為什么要編寫可維護(hù)的軟件生命周期的成本消耗在了維護(hù)上。相等具有強(qiáng)制類型轉(zhuǎn)換的機(jī)制。檢測(cè)字符串檢測(cè)數(shù)字檢測(cè)布爾值檢測(cè)檢測(cè)引用值引用值也稱為對(duì)象,檢測(cè)某個(gè)引用值的類型的官方最好的方法是使用運(yùn)算符。 為什么要編寫可維護(hù)的javascript? 軟件生命周期80%的成本消耗在了維護(hù)上。 幾乎所有的軟件維護(hù)者都不是它的最初作者。 編碼規(guī)范提高了軟件的可讀性,它讓工程師能夠快速且充分地理解新的代...

    weknow619 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<