JavaScript 命名規範
人與人交往中,有一個常見的溝通媒介就是名片。
也許與此人從未謀面,但是通過名片可以獲取此人的一些資訊,比如職位或它在工作中的角色。
程式設計中也是如此,成員良好的命名有利於程式碼的後期維護和團隊開發,看到名稱我們大致可以獲取如下資訊:
(1).成員的角色,比如是普通變數還是常量。
(2).成員的作用,通過名稱體現它的功能。
如果沒有規則的隨意命名,那麼我們看到的不僅僅是程式碼,在一定程度上可以說是密碼。
一.三種命名規範簡介:
當前有三種非常流行的命名規範,下面對它的命名規則進行簡單介紹。
1.駝峰命名:
當名稱由多個單詞構成時,為了便於識別,遵循如下規則:
(1).第一個單詞首字母小寫。
(2).第一個單詞之後的所有單詞首字母大寫。
簡單演示如下:
[JavaScript] 純文字檢視 複製程式碼let loadingModules ={}
從外觀看,叫做駝峰命名也算是恰如其分,英文名稱是Camel。
2.匈牙利命名法:
此命名法是微軟公司推廣的命名規範,主要原則如下:
(1).在名稱前面新增一個或者多個小寫的字首,此字首傳達一定資訊,比如g表是全域性成員,c表示常量等。
(2).字首之後是首字母為大寫的一個或者多個單詞的組合,用於說明成員的作用。
簡單演示如下:
[JavaScript] 純文字檢視 複製程式碼g_Servers CPrintInfo
可以看到字首可以帶有下劃線,也可以不帶,根據自己或者團隊的實際需求。
3.帕斯卡命名法:
與駝峰命名法基本是一樣的,只是第一個單詞的首字母也要大寫。
[JavaScript] 純文字檢視 複製程式碼let LoadingModules ={}
二.JavaScript不同型別成員命名規則:
下面進入正題,介紹一下JavaScript不同型別成員命名的一些規範。
在強調一下,下面所介紹的命名規範都是最佳時間,並不是語法規則,沒有必要嚴格遵守,只是建議,具體的命名還需要根據個人或者團隊的需要,但是隻要規則一旦制定,務必執行到底。
(1).變數命名:
使用駝峰命名發,程式碼例項如下:
[JavaScript] 純文字檢視 複製程式碼let webName="螞蟻部落"; let address='青島市南區';
(2).私有成員命名:
如果是私有成員,比如私有變數、方法或者屬性,通常以下劃線開頭。
簡單程式碼例項如下:
[JavaScript] 純文字檢視 複製程式碼let _privateMethod = function(){ // code }
(3).常量:
常量名稱全部用大寫形式,如果有多個單詞構成,使用下劃線分隔。
簡單程式碼例項如下:
[JavaScript] 純文字檢視 複製程式碼let HTML_ENTITY = {};
(4).函式命名:
用作普通函式,那麼採用駝峰命名法,如果用作建構函式或者類那麼採用帕斯卡命名法。
函式的引數使用駝峰命名法,類中的方法與屬性也採用駝峰命名法。
簡單程式碼例項如下:
[JavaScript] 純文字檢視 複製程式碼function Antzone(webName, address) { this.webName = webName; this.address = address; this.show=function(){ // code } }
(5).列舉命名:
當前,JavaScript並沒有列舉這個概念,在實際程式設計中可能會根據需要模擬實現。
又或者,在ts等類似語言中實現,列舉變數名稱採用帕斯卡命名法,列舉的成員屬性全部採用大寫形式。
簡單程式碼例項如下:
[JavaScript] 純文字檢視 複製程式碼let TargetState = { READING: 1, READED: 2, APPLIED: 3, READY: 4 };
(6).多個單詞的縮寫:
很多時候,一些成員的名稱中,有一部分是多個單詞的縮寫形式。
那麼此時,根據你所應用的命名法,和其所出現的位置,大小寫形式與第一個字母的大小寫一致。
上面的闡述可能令人一頭霧水,看下面簡單的程式碼例項:
[JavaScript] 純文字檢視 複製程式碼function XMLParser() {} function insertHTML() {}
XMLParser採用帕斯卡命名法,XML是三個單詞的縮寫,第一個X是大寫,那麼後面的ml也需要和X一致。
insertHTML採用駝峰命名法,HTML是四個單詞的縮寫,第一個H是大寫,那麼後面的tml也需要保持一致。
相關文章
- PHP 命名規範PHP
- PHP命名規範PHP
- java命名規範Java
- CSS命名規範CSS
- SqlServer命名規範SQLServer
- 前端開發規範:命名規範、html規範、css規範、js規範前端HTMLCSSJS
- 『前端規範化』CSS命名規範化前端CSS
- Android 程式碼規範 - 命名規範Android
- Android程式碼規範:命名規範Android
- Python命名規範Python
- CSS — BEM 命名規範CSS
- 前端命名基本規範前端
- css 命名規範 BEMCSS
- Android命名規範Android
- C#命名規範C#
- Java中的命名規範。Java
- mysql及php命名規範MySqlPHP
- div+css命名規範CSS
- 前端規範之javascript規範前端JavaScript
- Golang 推薦的命名規範Golang
- css命名和書寫規範CSS
- 我的專案命名規範
- BEM命名規範結合SCSSCSS
- CSS 選擇器命名規範CSS
- 檔案/資源命名規範
- C#開發命名規範C#
- Laravel命名規範速查表Laravel
- 軟體版本命名規範
- css書寫和命名規範CSS
- MAVEN 與 JAVA 包命名規範MavenJava
- android檔案命名規範Android
- JS變數與命名規範JS變數
- BEM——前端命名規範介紹前端
- DIV+CSS規範命名集合CSS
- Python基礎 - 命名規範Python
- Mysql 安裝包命名規範MySql
- CSS命名及書寫規範CSS
- Web前端——CSS的命名規範和範例Web前端CSS