色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

15個(gè)簡(jiǎn)單的JS編碼標(biāo)準(zhǔn)讓你的代碼更整潔(小結(jié))

瀏覽:102日期:2024-04-30 11:48:53

作者 | Daniel Anderson本文最初發(fā)布于 Medium 網(wǎng)站,經(jīng)原作者授權(quán)后翻譯和分享。

編碼標(biāo)準(zhǔn)可以幫助以下方面:

保持代碼一致 易于閱讀和理解 易于維護(hù)

下面的編碼標(biāo)準(zhǔn)是我對(duì)上述幾點(diǎn)有幫助的看法。

1. 比較時(shí)使用 === 代替 ==

這很重要,因?yàn)镴avaScript是一種動(dòng)態(tài)語(yǔ)言,因此使用==可能會(huì)給您帶來(lái)意想不到的結(jié)果,因?yàn)樗试S類型不同。Fail:

if (val == 2)

Pass:

if (val === 2)

2. 永遠(yuǎn)不要使用 var,使用 let 來(lái)代替

使用 let 將有助于避免 JavaScript 中各種 var 引起的作用域問(wèn)題。Fail:

var myVar = 10;

Pass:

let myVar = 10;

3. 使用 const 代替 let

這阻止了開發(fā)人員嘗試更改不應(yīng)該做的事情,并且確實(shí)有助于提高可讀性。Fail:

let VAT_PERCENT = 20;

Pass:

const VAT_PERCENT = 20;

4. 始終使用分號(hào)(;)

盡管這在 JavaScript 中是可選的,并不像其它語(yǔ)言一樣需要分號(hào)作為語(yǔ)句終止符。但是使用 ; 有助于使代碼保持一致。

Fail:

const VAT_PERCENT = 20;let amount = 10return addVat(amount, vatPercent)

Pass:

const vatPercent = 20;let amount = 10;return addVat(amount, vatPercent);

5. JavaScript中的命名約定

let 應(yīng)該使用駝峰命名。 const 如果在文件的頂部使用大寫的蛇形命名法。如果不在文件頂部,請(qǐng)使用駝峰命名。 class 應(yīng)該是帕斯卡命名法:MyClass functions 函數(shù)應(yīng)該是駝峰命名法:myFunction

6. 拼接字符串時(shí)使用模板字符串

模板字符串中允許嵌入表達(dá)式。Fail:

let fullName = firstName + ' ' + lastName;

Pass:

let fullName = `${firstName} ${lastName}`;

7. 盡可能使用ES6箭頭函數(shù)

箭頭函數(shù)是編寫函數(shù)表達(dá)式的更簡(jiǎn)潔的語(yǔ)法。Fail:

var multiply = function(a, b) { return a* b;};

Pass:

const multiply = (a, b) => { return a * b};

8. 始終在控制結(jié)構(gòu)周圍使用大括號(hào)

所有控制結(jié)構(gòu)都必須使用花括號(hào)(例如,if,else,for,do,while等),這樣后期維護(hù)時(shí),不容易出錯(cuò)。Fail:

if (valid) doSomething();if (amount > 100) doSomething();else if(amount > 200) doSomethingElse();

Pass:

if (valid) { doSomething();}if (amount > 100) { doSomething();} else if(amount > 200) { doSomethingElse();}

9. 確保大括號(hào)從同一行開始,中間有空格

Fail:

if (myNumber === 0){ doSomething();}

Pass:

if (myNumber === 0) { doSomething();}

10. 嘗試減少嵌套

if 內(nèi)的 if 會(huì)變得混亂并且很難閱讀。有時(shí)你可能無(wú)法解決問(wèn)題,但是可以好好卡看看代碼結(jié)構(gòu),看看是否可以改進(jìn)。Fail:

if (myNumber > 0) { if (myNumber > 100) { if (!hasDiscountAlready) { return addDiscountPercent(0); } else { return addDiscountPercent(10); } } else if (myNumber > 50) { if (hasDiscountAlready) { return addDiscountPercent(5); } } else { if (!hasDiscountAlready) { return addDiscountPercent(0); } else { return addDiscountPercent(1); } }} else { error();}

Pass:

if (myNumber <= 0) { return error;}if (!hasDiscountAlready) { return addDiscountPercent(0);}if (myNumber > 100) { return addDiscountPercent(10);}if (myNumber > 50) { return addDiscountPercent(5);}return addDiscountPercent(1);

通過(guò)上面的示例可以看出,減少嵌套之后,會(huì)變得容易閱讀。

11. 盡可能使用默認(rèn)參數(shù)

在 JavaScript 中,如果你在調(diào)用函數(shù)時(shí)沒(méi)有傳遞參數(shù),則它的值就是 undefinedFail:

myFunction(a, b) { return a + b;}

Pass:

myFunction(a = 0, b = 0) { return a + b;}

12. `Switch` 語(yǔ)句應(yīng)使用 `break` 并具有 `default`

我通常會(huì)嘗試不使用 switch 語(yǔ)句,但是你確實(shí)想使用它,請(qǐng)確保每個(gè)條件都 break ,并寫了 defalut。

Fail:

switch (myNumber){ case 10: addDiscountPercent(0); case 20: addDiscountPercent(2); case 30: addDiscountPercent(3);}

Pass:

switch (myNumber){ case 10: addDiscountPercent(0); break; case 20: addDiscountPercent(2); break; case 30: addDiscountPercent(3); break; default: addDiscountPercent(0); break;}

13. 不要使用通配符導(dǎo)入

Fail:

import * as Foo from ’./Foo’;

Pass:

import Foo from ’./Foo’;

14. 使用布爾值的快捷方式Fail:

if (isValid === true)if (isValid === false)

Pass:

if (isValid)if (!isValid)

15. 嘗試避免不必要的三元語(yǔ)句

Fail:

const boo = a ? a : b;

Pass:

const boo = a || b;

總結(jié)

任何語(yǔ)言的編碼標(biāo)準(zhǔn)都可以真正幫助提高應(yīng)用程序的可讀性和可維護(hù)性。如果你在團(tuán)隊(duì)中工作,那么一件很難的事情就是強(qiáng)制執(zhí)行編碼標(biāo)準(zhǔn)。這里有一些建議可以幫助你:

代碼審查,逐行Pass代碼。 整理或使用某種代碼分析器 創(chuàng)建新內(nèi)容時(shí),讓你們的一位高級(jí)開發(fā)人員初始化,其他開發(fā)人員可以使用該代碼作為指導(dǎo)。

原文鏈接: https://medium.com/javascript-in-plain-english/19-simple-javascript-coding-standards-to-keep-your-code-clean-7422d6f9bc0

到此這篇關(guān)于15個(gè)簡(jiǎn)單的JS編碼標(biāo)準(zhǔn)讓你的代碼更整潔(小結(jié))的文章就介紹到這了,更多相關(guān)JS編碼標(biāo)準(zhǔn)內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 伊人午夜| 亚洲欧美一区二区三区不卡 | 午夜成年人网站 | 日韩精品一级a毛片 | 国产美女一级毛片 | 亚洲天堂免费视频 | 一区国严二区亚洲三区 | 中文乱码字幕午夜无线观看 | 亚洲成年人在线观看 | 超薄肉色丝袜精品足j福利 超级乱淫视频aⅴ播放视频 | 国产成人亚洲精品2020 | 在线精品亚洲欧洲第一页 | 在线观看自拍视频 | 久草在线新首页 | 国产精品私人玩物在线观看 | 久久精品一级 | 99视频在线国产 | 美女视频黄免费 | aaaaaa精品视频在线观看 | 麻豆国产视频 | 色视频一区二区三区 | 精品亚洲福利一区二区 | 二区三区在线观看 | 久久免费国产精品一区二区 | 欧美一级视频在线 | 久久艹在线 | 欧美三级不卡在线观看视频 | 九九免费精品视频在这里 | 日本特黄aaaaaaa大片 | 中文字幕成人免费高清在线 | 久久综合本色宗合一本色 | 日本www在线视频 | 午夜三级在线 | 亚洲视频在线观看网址 | 欧美高清正版在线 | 国产高清美女一级a毛片久久w | 国产成人lu在线视频 | 欧美韩国日本 | 在线免费自拍 | 免费国产一区二区三区 | 亚洲国产欧美日韩第一香蕉 |