您好,登錄后才能下訂單哦!
這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)JavaScript開發(fā)規(guī)范有哪些,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
JavaScript開發(fā)規(guī)范有哪些要求
1、保證代碼壓縮后不出錯
對于大型的JavaScript項目,一般會在產(chǎn)品發(fā)布時對項目包含的所有JavaScript文件進(jìn)行壓縮處理,比如可以利用GoogleClosureCompilerService對代碼進(jìn)行壓縮,新版jQuery已改用這一工具對代碼進(jìn)行壓縮,這一般會去掉開發(fā)時寫的注釋,除去所有空格和換行,甚至可以把原來較長的變量名替換成短且無意義的變量名,這樣做的目的是加快文件的下載速度,同時也減小網(wǎng)站訪問帶來的額外數(shù)據(jù)流量,另外在代碼保護(hù)上也起到了一點(diǎn)點(diǎn)作用,至少壓縮后的代碼即使被還原還是沒那么容易一下讀懂的。要想代碼能正確通過壓縮,一般要求語句都要以分號正常結(jié)束,大括號也要嚴(yán)格結(jié)束等,具體還要看壓縮工具的要求。所以如果一開始沒有按標(biāo)準(zhǔn)來做,等壓縮出錯后再回去找錯誤那是浪費(fèi)時間。
2、保證代碼能通過特定IDE的自動格式化功能
一般較為完善的開發(fā)工具(比如AptanaStudio)都有代碼“自動格式”化功能,這一功能幫助實現(xiàn)統(tǒng)一換行、縮進(jìn)、空格等代碼編排,你可以設(shè)置自己喜歡的格式標(biāo)準(zhǔn),比如左大括號{是否另起一行。達(dá)到這個要求的目的在于方便你的開發(fā)團(tuán)隊成員拿你代碼的一個副本用IDE自動格式化成他喜歡或熟悉的風(fēng)格進(jìn)行閱讀。你同事需要閱讀你的代碼,可能是因為你寫的是通用方法,他在其它模塊開發(fā)過程中也要使用到,閱讀你的代碼能最深入了解方法調(diào)用和實現(xiàn)的細(xì)節(jié),這是簡單API文檔不能達(dá)到的效果。
JavaScript開發(fā)規(guī)范有哪些要求
3、使用標(biāo)準(zhǔn)的文檔注釋
這一要求算是最基本的,這有利于在方法調(diào)用處看到方法的具體傳參提示,也可以利用配套文檔工具生成html或其它格式的開發(fā)文檔供其他團(tuán)隊成員閱讀,你可以嘗試使用jsdoc-toolkit。如果你自動生成的API是出自一個開放平臺,就像facebook.com應(yīng)用,那么你的文檔是給天下所有開發(fā)者看的。另外編寫完整注釋,也更方便團(tuán)隊成員閱讀你的代碼,通過你的參數(shù)描述,團(tuán)隊成員可以很容易知道你編寫的方法傳參與實現(xiàn)細(xì)節(jié)。當(dāng)然也方便日后代碼維護(hù),這樣即使再大的項目,過了很長時間后,回去改點(diǎn)東西也就不至于自己都忘記了當(dāng)時自己寫的代碼是怎么一回事了。
4、使用規(guī)范有意義的變量名
使用規(guī)范有意義的變量名可以提高代碼的可讀性,作為大項目開發(fā)成員,自己寫的代碼不僅僅要讓別人容易看懂。開發(fā)大項目,其實每個人寫的代碼量可能都比較大,規(guī)范命名,日后自己看回自己的代碼也顯的清晰易懂,比如日后系統(tǒng)升級或新增功能,修改起代碼來也輕松多了。如果到頭發(fā)現(xiàn)自己當(dāng)初寫的代碼現(xiàn)在看不太懂了,那還真是天大的笑話了。
當(dāng)然,使用有意義的變量名也盡量使用標(biāo)準(zhǔn)的命名,比如像這里:varme=this也許沒有varself=this好,因為self是Python中的關(guān)鍵字,在Python中self就是通常語言this的用法。再看下面一個例子,加s顯然比沒有加來的科學(xué)些,這樣可以知道這個變量名存的是復(fù)數(shù),可能是數(shù)組等:
5、不使用生偏語法
JavaScript作為一門動態(tài)腳本語言,靈活性既是優(yōu)點(diǎn)也是缺點(diǎn),眾所周知,動態(tài)語言不同層次開發(fā)人員對實現(xiàn)同樣一個功能寫出來的代碼在規(guī)范或語法上會存在較大的差別。不管怎么樣,規(guī)范編碼少搞怪,不把簡單問題復(fù)雜化,不違反代碼易讀性原則才是大家應(yīng)該做的。
比如這語句:typeof(b)==‘string’&&alert(b)應(yīng)該改為:if(typeof(b)==‘string’)alert(b),像前面那種用法,利用了&&運(yùn)算符解析機(jī)制:如果檢測到&&前語句返回false就不再檢測后面語句,在代碼優(yōu)化方面也有提到把最可能出現(xiàn)的情況首先判斷,像這種寫法如果條件少還好,如果條件較多而且語句也長,那代碼可讀性就相當(dāng)差。
又比如:+function(a){varp=a;}(‘a(chǎn)’)應(yīng)該改為:(function(a){varp=a;})(‘a(chǎn)’),其實function前面的+號與包含function的()括號作用是一樣的,都是起運(yùn)算優(yōu)先作用,后者是常見且容易看明白的防止變量污染的做法,比如好些流行JavaScript框架就是采用后面這種方式。
上述就是小編為大家分享的JavaScript開發(fā)規(guī)范有哪些了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。