成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

nodejs編程規(guī)范

Tony_Zby / 3423人閱讀

摘要:開發(fā)需要編程規(guī)范嗎的靈活性非常大,如果開發(fā)人員每個人都按自己的習(xí)慣隨意編寫,的代碼會非常混亂不堪。程序員需要更強的自律性和規(guī)范,才能寫出易讀性,易維護的代碼。

node開發(fā)需要編程規(guī)范嗎?

js的靈活性非常大,如果開發(fā)人員每個人都按自己的習(xí)慣隨意編寫,js的代碼會非常混亂不堪。js程序員需要更強的自律性和規(guī)范,才能寫出易讀性,易維護的代碼。

隨著前端mvc的崛起,前端的js代碼會更加龐大難以管理,如果沒有統(tǒng)一的規(guī)范,后期維護會比登天還難。

編碼規(guī)范

縮進
采用兩個空格縮進,在編輯器中設(shè)置tab為兩個空格

變量聲明

用var聲明變量

var assert = require("assert");
var fork = require("child_process").fork;
var net = require("net");

錯誤實例:

var assert = require("assert")
, fork = require("child_process").fork
, net = require("net");

用字面量聲明方式

var num = 123;
var aaa = {};
var arr = [];
var isAdmin = true;

避免使用:

var obj =new Object();
var arr = new Array();
var test =new String("");
var size = new Number();

不要在for循環(huán)等循環(huán)里聲明var變量
首先var是函數(shù)作用域,在循環(huán)聲明以后只有等函數(shù)聲明周期結(jié)束這些資源才會釋放

空格
在操作符前后需要加上空格,= 、% 、* 、- 、+ 前后都應(yīng)該加一個空格

比如:var foo = "bar" + baz;
錯誤實例:var foo="bar"+baz;

單雙引號的使用
在node中盡量使用單引號,

var html = "

在json中使用雙引號

分號
給表達式結(jié)尾加分號,盡管js會自動在行尾加上分號,但是會產(chǎn)生一些誤解

命名規(guī)范

在編碼中,命名是重頭戲。好的命名可以使代碼賞心悅目,具有良好的維護性。

變量命名
變量名采用小駝峰命名,單詞之間沒有任何符號如:

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的字樣,應(yīng)當(dāng)適當(dāng)短并且有意義

其它要點

作用域
慎用with和eval(),容易引起作用域混亂

比較操作
盡量使用===代替==,否則會遇到下面的情況,

 "0"==0;//true;
 ""==0;//true;
 "0"===""http://false;

嚴(yán)格模式
在node后臺中盡量全使用嚴(yán)格模式

"use strict";

對象和數(shù)組遍歷
數(shù)組遍歷使用普通for循環(huán),避免使用for in對數(shù)組遍歷,對象的遍歷使用for in

項目中實踐

sublime和webstorm都有JSLint,JSHint這樣的代碼質(zhì)量工具,在配置文件中制定好模板規(guī)范即可

在版本控制工具中設(shè)置hook,在precommit的腳本中設(shè)置,如果代碼不符合標(biāo)準(zhǔn),就無法提交

參考文獻

深入淺出nodejs

js秘密花園

js高級編程

如果文章對你有幫助,請去我的個人博客留個言吧! 我的博客

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/79873.html

相關(guān)文章

  • 前端資源系列(4)-前端學(xué)習(xí)資源分享&前端面試資源匯總

    摘要:特意對前端學(xué)習(xí)資源做一個匯總,方便自己學(xué)習(xí)查閱參考,和好友們共同進步。 特意對前端學(xué)習(xí)資源做一個匯總,方便自己學(xué)習(xí)查閱參考,和好友們共同進步。 本以為自己收藏的站點多,可以很快搞定,沒想到一入?yún)R總深似海。還有很多不足&遺漏的地方,歡迎補充。有錯誤的地方,還請斧正... 托管: welcome to git,歡迎交流,感謝star 有好友反應(yīng)和斧正,會及時更新,平時業(yè)務(wù)工作時也會不定期更...

    princekin 評論0 收藏0
  • 前端人員必須知道的三個問題

    摘要:第一個問題前端都做哪些事呢,前端都需要哪些技術(shù)呢前端發(fā)展的三個階段初級階段入門常見標(biāo)簽,新增的,語義化標(biāo)簽等等選擇器,背景,文本,鏈接,列表,盒模型,定位,浮動,新增的屬性柵格化系統(tǒng),按鈕,表單,導(dǎo)航數(shù)據(jù)類型,對象,函數(shù),運算符,語句,,選 第一個問題:前端都做哪些事呢,前端都需要哪些技術(shù)呢 前端發(fā)展的三個階段: 初級階段:(入門) html:常見標(biāo)簽,html5新增的,語義化標(biāo)簽等等...

    zollero 評論0 收藏0
  • 前端人員必須知道的三個問題

    摘要:第一個問題前端都做哪些事呢,前端都需要哪些技術(shù)呢前端發(fā)展的三個階段初級階段入門常見標(biāo)簽,新增的,語義化標(biāo)簽等等選擇器,背景,文本,鏈接,列表,盒模型,定位,浮動,新增的屬性柵格化系統(tǒng),按鈕,表單,導(dǎo)航數(shù)據(jù)類型,對象,函數(shù),運算符,語句,,選 第一個問題:前端都做哪些事呢,前端都需要哪些技術(shù)呢 前端發(fā)展的三個階段: 初級階段:(入門) html:常見標(biāo)簽,html5新增的,語義化標(biāo)簽等等...

    王晗 評論0 收藏0
  • 前端人員必須知道的三個問題

    摘要:第一個問題前端都做哪些事呢,前端都需要哪些技術(shù)呢前端發(fā)展的三個階段初級階段入門常見標(biāo)簽,新增的,語義化標(biāo)簽等等選擇器,背景,文本,鏈接,列表,盒模型,定位,浮動,新增的屬性柵格化系統(tǒng),按鈕,表單,導(dǎo)航數(shù)據(jù)類型,對象,函數(shù),運算符,語句,,選 第一個問題:前端都做哪些事呢,前端都需要哪些技術(shù)呢 前端發(fā)展的三個階段: 初級階段:(入門) html:常見標(biāo)簽,html5新增的,語義化標(biāo)簽等等...

    jeffrey_up 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<