js的靈活性非常大,如果開發人員每個人都按自己的習慣隨意編寫,js的**會非常混亂不堪。js程式設計師需要更強的自律性和規範,才能寫出易讀性,易維護的**。
隨著前端mvc的崛起,前端的js**會更加龐大難以管理,如果沒有統一的規範,後期維護會比登天還難。
縮排採用兩個空格縮排,在編輯器中設定tab為兩個空格
變數宣告
空格在操作符前後需要加上空格,= 、% 、* 、- 、+ 前後都應該加乙個空格
比如:var foo = 'bar' + baz;
錯誤例項:var foo='bar'+baz;
單雙引號的使用
在node中盡量使用單引號,
var html = 'cnode';
在json中使用雙引號
分號給表示式結尾加分號,儘管js會自動在行尾加上分號,但是會產生一些誤解
在編碼中,命名是重頭戲。好的命名可以使**賞心悅目,具有良好的維護性。
變數命名
變數名採用小駝峰命名,單詞之間沒有任何符號如:
var adminuser = {};
var callnum = 2134323;
方法命名
也是採用小駝峰命名,與變數不同的是採用動詞或判斷行詞彙,如:
var getuser = function(){};
var isadmin = function(){};
var finduser = function(){};
類命名
類名採用大駝峰,所有單詞首字母大寫,如:
function user
常量命名
作為常量,單詞所有字母大寫,用下劃線分割,如:
var pink_color = "pink";
檔案命名
命名檔案時,盡量使用下劃線分割單詞,比如child_process.js和string_decode.js
包名在包名中盡量不要包含js和node的字樣,應當適當短並且有意義
作用域慎用with和eval(),容易引起作用域混亂
比較操作
盡量使用===代替==,否則會遇到下面的情況,
'0'==0;//true;
''==0;//true;
'0'===''//false;
嚴格模式
在node後台中盡量全使用嚴格模式
'use strict';
物件和陣列遍歷
陣列遍歷使用普通for迴圈,避免使用for in對陣列遍歷,物件的遍歷使用for in
sublime和webstorm都有jslint,jshint這樣的**質量工具,在配置檔案中制定好模板規範即可
在版本控制工具中設定hook,在precommit的指令碼中設定,如果**不符合標準,就無法提交
深入淺出nodejs
js****
js高階程式設計
如果文章對你有幫助,請去我的個人部落格留個言吧! 我的部落格
程式設計命名規範之 Google C 程式設計命名規範
大一的時候曾經特別關注過命名規範的問題,並且寫了乙個部落格總結了一些基礎的規範 三種程式設計命名規範 後來得知有一種命名規範叫做 go ogle c goo glec 命名規範的時候,特意看了一下,但是特別反感,感覺太糟糕了,所以就沒有深究過 我討厭壓行,這是我反感這個規範的最大原因。不過,現在我不...
nodejs 非同步程式設計async await
參考 在路由js中 router.get function req,res,next router.post async function request,response module.exports router 在路由呼叫的js檔案login.js中 const global require ...
SQL程式設計規範
一 sql書寫規範 二 書寫優化效能建議 三 其他經驗性規則 一 sql書寫規範 1 sql語句的所有表名 欄位名全部小寫,系統保留字 內建函式名 sql保留字大寫。2 連線符or in and 以及 等前後加上乙個空格。3 對較為複雜的sql語句加上注釋,說明演算法 功能。注釋風格 注釋單獨成行 ...