W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
npm 的編碼風(fēng)格有點不合常規(guī)。它并沒有因為差異而不同,而是一種精心設(shè)計的風(fēng)格,旨在減少視覺混亂并使錯誤更加明顯。
如果你想為 npm 做出貢獻(xiàn)(這是非常受鼓勵的),你應(yīng)該讓你的代碼符合 npm 的風(fēng)格。
注意: 這涉及 npm 的代碼,而不是你可以從 npm 注冊表下載的特定包。
保持行短于 80 個字符。
一行代碼內(nèi)容短一些總比一長串的代碼要來得好。將長列表、對象和其他語句分解為多行。
兩個空格。 Tab 縮進(jìn)更好,但它們在 Web 瀏覽器(和 GitHub 上)中看起來特別的不好,節(jié)點用 2 個空格,就是這樣。 應(yīng)該適當(dāng)?shù)嘏渲媚愕木庉嬈鳌?/p>
大括號與需要它們的內(nèi)容在同一行。 不好:
function()
{
好的:
function(){
如果塊需要換到下一行,請使用花括號。如果沒有,請不要使用它。 壞的:
if(foo){bar()}
while(foo)
bar()
好的:
if(foo) bar()
while (foo){
bar()
}
除了以下的四種情況之外,就不要使用它們:
(
或[
在該行的開始。這可以防止表達(dá)式分別被誤解為函數(shù)調(diào)用或?qū)傩栽L問。一些良好的分號用法示例:
;(x || y).doSomethin()
;[a, b, c].forEach(doSomething)
for (var i = 0; i < 10; i ++) {
switch (state) {
case 'begin': start(); continue
case 'end': finish(); break
default: throw new Error('unknown state')
}
end()
}
請注意,以-
and開頭的行+
也應(yīng)該以分號為前綴,但這種情況不太常見。
如果有一個由逗號分隔的事物列表,并且它包含在多行中,請將逗號放在下一行的開頭,直接在開始列表的標(biāo)記下方。將列表中的最后一個標(biāo)記單獨放在一行上。例如:
var magicWords = [ 'abracadabra'
, 'gesundheit'
, 'ventrilo'
]
, spells = { 'fireball' : function () { setOnFire() }
, 'water' : function () { putOut() }
}
, a = 1
, b = 'abc'
, etc
, somethingElse
對字符串使用單引號,除非避免轉(zhuǎn)義。 壞的:
var notOk = "Just double quotes"
好的:
var ok = 'String contains "double" quotes'
var alsoOk = "String contains 'single' quotes or apostrophe"
在(
函數(shù)調(diào)用之外的任何內(nèi)容前面放置一個空格。也可以在任何使事情更具可讀性的地方使用單個空格。
不要在行尾留下尾隨空格。不要縮進(jìn)空行。不要使用多余的空格。
使用命名函數(shù)。它們使堆棧跟蹤更易于閱讀。
盡可能使用異步/非阻塞版本的事物。npm 使用同步 fs API 可能更有意義,但是這樣,fs 和 http 以及子進(jìn)程都使用相同的回調(diào)傳遞方法。
回調(diào)應(yīng)該始終是列表中的最后一個參數(shù)。它的第一個參數(shù)是 Error 或 null。
要非常小心,永遠(yuǎn)不要扔任何東西。這比沒用更糟糕。只需將錯誤消息作為回調(diào)的第一個參數(shù)發(fā)送回即可。
始終使用您的消息創(chuàng)建一個新的 Error 對象。不要只是向回調(diào)返回一個字符串消息。堆棧跟蹤很方便。
日志記錄是使用[npm-config]()實用程序完成的。
當(dāng)日志不再有用時,請清理日志。特別是,一遍又一遍地記錄同一個對象是沒有幫助的。日志應(yīng)該報告正在發(fā)生的事情,以便更容易地跟蹤故障發(fā)生的位置。
使用適當(dāng)?shù)娜罩炯墑e。查看 npm-config 并搜索 "loglevel"。
使用使用lowerCamelCase
時,他們指的對象,函數(shù),方法,屬性,或者在本節(jié)中未指定任何東西多字的標(biāo)識符。
使用UpperCamelCase
的類名(的東西,你會傳遞到“新”)。
使用all-lower-hyphen-css-case
對多字的文件名和配置鍵。
使用命名函數(shù)。它們使堆棧跟蹤更容易跟蹤。
使用CAPS_SNAKE_CASE
常量,事情應(yīng)該不會改變,并且很少使用。
函數(shù)名使用單個大寫字母,函數(shù)通常是匿名的,但需要遞歸調(diào)用自身。它清楚地表明這是一個“一次性”功能。
布爾變量和函數(shù)應(yīng)始終為true
或?false
。不要將它設(shè)置為 0,除非它應(yīng)該是一個數(shù)字。
當(dāng)故意丟失或刪除某些內(nèi)容時,請將其設(shè)置為null
。
不要將事情設(shè)置為undefined
.?保留該值以表示“尚未設(shè)置為任何內(nèi)容”。
禁止使用布爾對象。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: