JavaScript 代碼規(guī)范
所有的 JavaScript 項(xiàng)目適用同一種規(guī)范。
JavaScript 代碼規(guī)范
代碼規(guī)范通常包括以下幾個(gè)方面:
變量和函數(shù)的命名規(guī)則
空格,縮進(jìn),注釋的使用規(guī)則。
其他常用規(guī)范……
規(guī)范的代碼可以更易于閱讀與維護(hù)。
代碼規(guī)范一般在開(kāi)發(fā)前規(guī)定,可以跟你的團(tuán)隊(duì)成員來(lái)協(xié)商設(shè)置。
變量名
變量名推薦使用駝峰法來(lái)命名(camelCase):
lastName = "Doe";
price = 19.90;
tax = 0.20;
fullPrice = price + (price * tax);
空格與運(yùn)算符
通常運(yùn)算符 ( = + - * / ) 前后需要添加空格:
實(shí)例:
var values = ["Volvo", "Saab", "Fiat"];
代碼縮進(jìn)
通常使用 4 個(gè)空格符號(hào)來(lái)縮進(jìn)代碼塊:
函數(shù):
return (5 / 9) * (fahrenheit - 32);
}
![]() | 不推薦使用 TAB 鍵來(lái)縮進(jìn),因?yàn)椴煌庉嬈?TAB 鍵的解析不一樣。 |
---|
語(yǔ)句規(guī)則
簡(jiǎn)單語(yǔ)句的通用規(guī)則:
一條語(yǔ)句通常以符號(hào)作為結(jié)束符。
實(shí)例:
var person = {
firstName: "John",
lastName: "Doe",
age: 50,
eyeColor: "blue"
};
復(fù)雜語(yǔ)句的通用規(guī)則:
將左花括號(hào)放在第一行的結(jié)尾。
左花括號(hào)前添加一空格。
將右花括號(hào)獨(dú)立放在一行。
不要以分號(hào)結(jié)束一個(gè)復(fù)雜的聲明。
函數(shù):
return (5 / 9) * (fahrenheit - 32);
}
循環(huán):
x += i;
}
條件語(yǔ)句:
greeting = "Good day";
} else {
greeting = "Good evening";
}
對(duì)象規(guī)則
對(duì)象定義的規(guī)則:
將左花括號(hào)與類(lèi)名放在同一行。
冒號(hào)與屬性值間有個(gè)空格。
字符串使用雙引號(hào),數(shù)字不需要。
最后一個(gè)屬性-值對(duì)后面不要添加逗號(hào)。
將右花括號(hào)獨(dú)立放在一行,并以符號(hào)作為結(jié)束符號(hào)。
實(shí)例:
firstName: "John",
lastName: "Doe",
age: 50,
eyeColor: "blue"
};
短的對(duì)象代碼可以直接寫(xiě)成一行:
實(shí)例:
每行代碼字符小于 80
為了便于閱讀每行字符建議小于數(shù) 80 個(gè)。
如果一個(gè) JavaScript 語(yǔ)句超過(guò)了 80 個(gè)字符,建議在 運(yùn)算符或者逗號(hào)后換行。
實(shí)例
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文網(wǎng)(php.cn)</title> </head> <body> <h1>我的 Web 頁(yè)面</h1> <p> 建議在運(yùn)算符或者逗號(hào)后換行。 </p> <p id="demo"></p> <script> document.getElementById("demo").innerHTML = "Hello php."; </script> </body> </html>
運(yùn)行實(shí)例 ?
點(diǎn)擊 "運(yùn)行實(shí)例" 按鈕查看在線實(shí)例
命名規(guī)則
一般很多代碼語(yǔ)言的命名規(guī)則都是類(lèi)似的,例如:
變量和函數(shù)為駝峰法( camelCase)
全局變量為大寫(xiě) (UPPERCASE )
常量 (如 PI) 為大寫(xiě) (UPPERCASE )
變量命名你是否使用這幾種規(guī)則: hyp-hens, camelCase, 或under_scores ?
HTML 和 CSS 的橫桿(-)字符:
HTML5 屬性可以以 data- (如:data-quantity, data-price) 作為前綴。
CSS 使用 - 來(lái)連接屬性名 (font-size)。
![]() | - 通常在 JavaScript 中被認(rèn)為是減法,所以不允許使用。 |
---|
下劃線:
很多程序員比較喜歡使用下劃線(如:date_of_birth), 特別是在 SQL 數(shù)據(jù)庫(kù)中。
PHP 語(yǔ)言通常都使用下劃線。
帕斯卡拼寫(xiě)法(PascalCase):
帕斯卡拼寫(xiě)法(PascalCase) 在 C 語(yǔ)言中語(yǔ)言較多。
駝峰法:
JavaScript 中通常推薦使用駝峰法,jQuery 及其他 JavaScript 庫(kù)都使用駝峰法。
![]() | 變量名不要以 $ 作為開(kāi)始標(biāo)記,會(huì)與很多 JavaScript 庫(kù)沖突。 |
---|
HTML 載入外部 JavaScript 文件
使用簡(jiǎn)潔的格式載入 JavaScript 文件 ( type 屬性不是必須的):
使用 JavaScript 訪問(wèn) HTML 元素
一個(gè)糟糕的 HTML 格式可能會(huì)導(dǎo)致 JavaScript 執(zhí)行錯(cuò)誤。
以下兩個(gè) JavaScript 語(yǔ)句會(huì)輸出不同結(jié)果:
實(shí)例
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文網(wǎng)(php.cn)</title> </head> <body> <p id="Demo">段落 1。</p> <p id="demo">段落 2。</p> <script> // 只有段落 2 會(huì)被替換 document.getElementById("demo").innerHTML = "HELLO."; </script> </body> </html>
運(yùn)行實(shí)例 ?
點(diǎn)擊 "運(yùn)行實(shí)例" 按鈕查看在線實(shí)例
HTML 與 JavaScript 盡量使用相同的命名規(guī)則。
訪問(wèn) HTML(5) 代碼規(guī)范。
文件擴(kuò)展名
HTML 文件后綴可以是 .html (或r .htm)。
CSS 文件后綴是 .css 。
JavaScript 文件后綴是 .js 。
使用小寫(xiě)文件名
大多 Web 服務(wù)器 (Apache, Unix) 對(duì)大小寫(xiě)敏感: london.jpg 不能通過(guò) London.jpg 訪問(wèn)。
其他 Web 服務(wù)器 (Microsoft, IIS) 對(duì)大小寫(xiě)不敏感: london.jpg 可以通過(guò) London.jpg 或 london.jpg 訪問(wèn)。
你必須保持統(tǒng)一的風(fēng)格,我們建議統(tǒng)一使用小寫(xiě)的文件名。