前端js編碼規範中是否有case後必須跟break,前端的語法真的只是夠用就好?

時間 2021-05-29 23:32:11

1樓:shelwin

case裡規範的確是需要加break,不過,你的邏輯是,每個case裡都是return,那這種情況,不需要加break了

2樓:

看適用場景吧,return 跳出函式,break 跳出語句;

舉個例子:

vara

=999

;function

num(n)

a++;}

num(3);

console

.log(a

);// 1000

num(4);

console

.log(a

);// 1000

函式體找到 3 匹配,跳出語句,a++ ,a 變成了 1000 ;

接著函式體找到 4 匹配,由於跳出函式體,所以不繼續語句 a++,由於上乙個函式體改變了 a 值「1000」 ,所以 a = 1000。

這中情況適用於具有優先順序的繼承方面

繼續例子:

vara

=999

;function

num(n)

a++;}

num(4);

console

.log(a

);// 999

num(5);

console

.log(a

);// 1000

函式體找到 4 ,由於跳出函式,不執行 a++ 所以 a 還是 a「999」;

函式體找到 5 匹配,跳出語句,a++ ,a 變成了 1000 ;

這種情況適用於繼承方面。

同樣的,如果我們每條新增 return 及 break 會怎麼樣?

會驚奇的發現,每次返回的結果都是 999;

例子:vara=

999;

function

num(n)

a++;}

num(1);

console

.log(a

);// 999

num(2);

console

.log(a

);// 999

num(3);

console

.log(a

);// 999

num(4);

console

.log(a

);// 999

num(5);

console

.log(a

);// 999

因為每次直接返回函式體,語句也中斷了,a++ 一直出於打醬油狀態。

這種情況適用於準確資料方面。

看專案的具體操作吧。

3樓:twoyao

沒聽說有這樣的規範。eslint裡有個no-fallthrough的規則,但在case塊中只使用return而省略break是不違反規則的。相反的,return後接break在某些IDE中可能會警告(break語句不會執行)。

4樓:

規範也是人定的

乙個函式裡寫一大堆return就十分醜了,我覺得case塊後面接break,所有return只寫在函式底部比較好,把switch的功能和return的功能拆開。

當然如果公司自己家的規範就是這樣,你也只能遵守了。

請問前端學習是否可以直接跳過js學習ts

刃舞 ts 我 js 基礎還行,最近工作需要用 ts 維護專案,花了兩天看文件就上手開發了 當然能這麼快上手跟我寫過 C PHP 也有點關係,但我想說的是,那點語法根本不是事,重要的是體會不同語言帶給你的開發體驗,思考它的缺點,明白人們為什麼要造 ts 這個輪子,而不是盲目跟風,學都不知道為啥學 再...

在前端js程式設計中,是自己寫外掛程式好,還是用網上的外掛程式?

lipten 如果專案經常改需求很多定製化的東西,而且要做到最適合最輕量速度最快,那麼自己寫才能把控得住,一般自己的產品就可以這麼自己寫 如果是外包就得為了減少時間和保持穩定性用成熟的開源專案吧 建議自己寫,很多功能外掛程式是考慮不到的,自己寫可以滿足各種需求,網上的外掛程式不可能滿足你所有的需求,...

口當 是否存在於大陸規範字中?

地鼠吃瓜卡住牙 一簡字時候由繁體變成的口當。事情發生在二簡字開始至廢除這段時間裡。具體不想查了,困。以前只要你能寫出來,我就能給你整出畫面。現在,不好意思整不出來。 13166298289 你說的是這個麼?漢典搜尋出來的。86版字典或康熙大辭典裡都沒有的。真 你看看你用輸入法打出來的是什麼,或者你把...