成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

網(wǎng)站前端開(kāi)發(fā)的代碼排版風(fēng)格

2021-04-11    分類(lèi): 網(wǎng)站建設(shè)

雖然任何一種語(yǔ)言都沒(méi)有任何約定的風(fēng)格,但也總有一些不成文且喜聞樂(lè)見(jiàn)的習(xí)俗。以你的代碼為例,給以下幾個(gè)風(fēng)格上的建議:
  • 每個(gè)function之間多一空行,是的,除去注釋外再多一空行;
  • 適當(dāng)加空格,比如if和后面的括號(hào)之間的空格、小括號(hào)和花括號(hào)之間的空格、冒號(hào)和function之間的空格等等;
  • 風(fēng)格上保持一致,你的代碼里面有的地方+號(hào)和運(yùn)算數(shù)之間有空格,有的則沒(méi)有;
  • 少用下劃線(xiàn)開(kāi)頭的變量命名;
  • 一段代碼里,var語(yǔ)句可以合并在一起;
  • 暫時(shí)不會(huì)再修改的function或object,先用編輯器折疊起來(lái),看上去也會(huì)整潔很多;
  • 黑色背景的editor風(fēng)格不錯(cuò),不過(guò)關(guān)鍵字、注釋、運(yùn)算符等顏色上可以再調(diào)整,主要是為了防止審美疲勞,換個(gè)色調(diào)換個(gè)心情;
  • 使用成熟的javascript庫(kù)

    如果沒(méi)看錯(cuò)的話(huà),你可能是使用了jquery吧(至少也有一個(gè)類(lèi)似sizzle或更簡(jiǎn)單的解析器,證據(jù)在倒數(shù)第十行左右)。所以,就盡可能避免使用原生的javascript.dom操作。

    jquery的符號(hào),以cssselector風(fēng)格統(tǒng)一取代了各種getelement(s)byxxx的接口,并且擴(kuò)展性非常強(qiáng),是很多設(shè)計(jì)模式思想的綜合運(yùn)用。

    當(dāng)然原生dom也有自己的優(yōu)勢(shì)(主要是執(zhí)行效率),但是大部分時(shí)候,在開(kāi)發(fā)效率、代碼質(zhì)量、執(zhí)行效率的tradeoff中,jquery還是好選擇。此外也推薦下javascript.mvc庫(kù)、jqueryui庫(kù)等等。

    代碼整理
    構(gòu)思清楚,再寫(xiě)代碼,你已經(jīng)做到了。
    但是,誰(shuí)能保證代碼是一成不變、一勞永逸的呢?
    所以,「重構(gòu)」的時(shí)候,除非是時(shí)間緊迫,永遠(yuǎn)不要松懈代碼質(zhì)量。
    web前端愛(ài)好者toobug對(duì)樓主的代碼也進(jìn)行了詳細(xì)的點(diǎn)評(píng),并且也給出了一些非常有意義的指導(dǎo):

    代碼中邏輯沒(méi)有分塊、沒(méi)有空行、沒(méi)有注釋、看起來(lái)很累,建議對(duì)代碼進(jìn)行分塊,比如將變量集中在頭部定義,然后處理一些賦值,最后執(zhí)行一些其它的函數(shù)。具體到這個(gè)例子,有很多不恰當(dāng)?shù)牡胤?,比如可以先var_height;然后在條件分支中進(jìn)行賦值,比如在一堆賦值語(yǔ)句中間夾雜了一個(gè)parsetemplate。

  • “_”用得太多,this._var這個(gè)可以理解,因?yàn)橐獏^(qū)分是否私有變量,但是var_height這個(gè)完全沒(méi)有必要加,加得太多反而看著很累,而且也沒(méi)有任何區(qū)分的意義。
  • 沒(méi)有將常用的變量緩存,這里最應(yīng)該緩存的是this._options,要不然看起來(lái)很亂,而且緩存起來(lái)對(duì)性能也是有好處的。
  • 對(duì)象的規(guī)劃(命名)不清晰,比如this._options和this.opts什么關(guān)系?我反正是看不明白。
  • 代碼風(fēng)格不統(tǒng)一。
  • 函數(shù)內(nèi)變量名混亂(和第四點(diǎn)很像),比如第二個(gè)函數(shù)中id和_id什么關(guān)系?為什么不用aaaid和bbbid?cre又是什么,難道是createelement縮寫(xiě)?變量盡量起有意義的,可區(qū)分的名字。
  • 函數(shù)名稱(chēng)表義不明,命名不符合大部分規(guī)范約定。第一眼看到_ishavetable,我第一反應(yīng)是,這應(yīng)該是類(lèi)似returntrue或者returnfalse之類(lèi)的吧。結(jié)果一看,這么長(zhǎng),難道返回在后面?又往后看了一眼,這根本就沒(méi)有返回??!那為什么要用_ishavetable???_is開(kāi)頭的函數(shù)明明白白就應(yīng)該返回一個(gè)true或者false啊。
  • 文章題目:網(wǎng)站前端開(kāi)發(fā)的代碼排版風(fēng)格
    分享地址:http://jinyejixie.com/news/106872.html

    成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、域名注冊(cè)、云服務(wù)器、營(yíng)銷(xiāo)型網(wǎng)站建設(shè)網(wǎng)站內(nèi)鏈、網(wǎng)站制作

    廣告

    聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

    成都網(wǎng)站建設(shè)公司
    东阿县| 中西区| 化隆| 宁化县| 洪江市| 麟游县| 双江| 景泰县| 黔南| 佛坪县| 城口县| 洪江市| 迁安市| 隆昌县| 抚远县| 紫金县| 平谷区| 常宁市| 阿勒泰市| 弋阳县| 兴仁县| 赤峰市| 英山县| 双柏县| 仲巴县| 阿坝| 弥渡县| 芦山县| 南充市| 长寿区| 翁源县| 长泰县| 通城县| 盐山县| 澎湖县| 丹寨县| 漳平市| 鄯善县| 华坪县| 尖扎县| 诏安县|