精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

2015年 12條專業(yè)的JavaScript規(guī)則

開發(fā) 前端
學習JavaScript是困難的。它發(fā)展的如此之快,以至于在任何一個特定的時刻,你都不清楚自己是否“做錯了”。有些時候,感覺像是壞的部分超過了好的部分。然而,討論這些并沒有意義,JavaScript正在征服世界,所以,我們也只能這么做了。

[[151216]]

免責聲明:下面的內(nèi)容為了簡潔說的有些絕對,是的,在編程中所有的“規(guī)則”都有例外。

學習JavaScript是困難的。它發(fā)展的如此之快,以至于在任何一個特定的時刻,你都不清楚自己是否“做錯了”。有些時候,感覺像是壞的部分超過了好的部分。然而,討論這些并沒有意義,JavaScript正在征服世界,所以,我們也只能這么做了。

下面是我的一些建議:

1. JS應(yīng)該放到 .js 文件中

“額,只有那么幾行而已…”,是的,我的意思是所有的 JS 都應(yīng)該放在 .js 文件中。為什么呢?因為這有助于可讀性,節(jié)省帶寬。行內(nèi) JavaScript 在每次頁面加載時都會重新下載,相反的,單獨的 .js 文件則會被緩存起來。正如你所看到的,這個規(guī)則有助于支持如下一長串的其他規(guī)則。這就是為什么它的規(guī)則# 1。

2. JS 應(yīng)該是靜態(tài)的

我看到過很多程序員喜歡動態(tài)的使用JavaScript。他們喜歡像使用服務(wù)器端語言如C#, Ruby, Java那樣來動態(tài)的使用JavaScript。千萬不要這么做。你失去了代碼著色、語法高亮顯示和智能感知的支持。記住,JavaScript 應(yīng)該屬于一個 .js 文件(見規(guī)則 #1)。

然而,使用JSON引入動態(tài)行為。我把這稱為JavaScript配置對象模式。具體方法如下:把JSON注入到你應(yīng)用程序的頭部,并根據(jù)業(yè)務(wù)邏輯 的需要利用這些數(shù)據(jù)。你可能會想:“嘿,這違背了規(guī)則 #1”。我把 JSON 看作是數(shù)據(jù),而不是代碼,所以我破例,為了支持靜態(tài)的、單獨的JavaScript文件。

StackOverflow 使用的這種模式,Google 也是。你可以看下他們的代碼:

js-configuration-object-pattern

正如你看到的,StackOverflow 注入了一些個人的設(shè)置,如 isNoticesTabEnabled。這個簡單的JSON代碼片段為你使用靜態(tài)JavaScript文件自定義行為提供了 必要的數(shù)據(jù)支持。為了實現(xiàn)這一點,需要序列號服務(wù)器端類為JSON,然后放置在 <head> 中。然后你可以在靜態(tài)的JavaScript文件中根據(jù)需要參考這個數(shù)據(jù)結(jié)構(gòu),能夠使用它,是因為它被注入到 <head> 中。

3. JS 應(yīng)該被壓縮

壓縮可以減小文件體積,從而提升頁面加載速度。記住,性能也是一項功能。因為,為了壓縮,你需要把 JS 放到一個單獨的文件中(見規(guī)則 #1)。壓縮JS曾經(jīng)很麻煩,但現(xiàn)在完全是簡單自動化的。有一打的方式可以做到,而Gulp 和 gulp-uglify 是一種低摩擦和自動化的辦法。

4. JS 應(yīng)該位于頁面底部

如果你把 <script> 標簽放在 <head> 中,它會阻礙頁面渲染。位于 <head> 中的腳本必須在頁面顯示前加載,因此把 <script> 放在底部的 </body> 前面可以先顯示頁面,而不用等 JS 文件下載完畢。這有助于提升感知性能。如果你的JavaSctipe必須位于 <head> 中,可以考慮使用 jQuery 的 $(document).ready 這樣你的腳本可以等到 DOM 加載完畢后再執(zhí)行。

5. JS 應(yīng)該實時的 Linted

Linting 遵循代碼風格、發(fā)現(xiàn)錯別字、有助于避免錯誤。有很多這樣的工具,我建議使用 ESLint。你可以使用 Gulp 的 gulp-eslint 來運行它。Gulp 可以查看你所有的 JS 文件,并在你每次保存的時候運行 linter。另外,你需要把你的 JS 代碼放在單獨的 .js 文件中才能運行 linter 。

6. JS應(yīng)該有自動化測試

在過去的幾年中,我們知道了測試的重要性。但它在很大程度上忽略了在JavaScript,直到最近才被重視。現(xiàn)在典型的JavaScript應(yīng)用需要測試的部分遠比你實際手動測試到的要多。使用JavaScript處理這么多的邏輯,關(guān)鍵的是具有自動測試。

您可以通過工具,如 Selenium 自動化集成測試。然而,集成測試往往是脆弱的,所以我建議專注于自動化單元測試。自動化單元測試有多種選擇。如果你是新手, 我建議你使用Jasmine,而如果你想要***配置,可以使用Mocha with Chai

7. JS 需要封裝

前些年我們了解了全局變量的風險,值得慶幸的是,現(xiàn)在有很多的方法來封裝JS:

ES6模塊是未來。好消息是,雖然在瀏覽器中還不能很好的支持,但你可以用 Babel 來使用它。

如果你不想 transpile, CommonJS可能是你***的選擇。由于 Node 使用的 CommonJS 模式,所以你可以使用npm 來下載數(shù)千個包。CommonJS 不能在瀏覽器中運行,所以你可能需要  BrowserifyWebpack, or JSPM.

8. JS 依賴應(yīng)當明確

這條規(guī)則與上述規(guī)則緊密相關(guān)。一旦你開始封裝JavaScript,您需要一個簡單的方法來引用其他模塊。這就是常說的現(xiàn)代模塊系統(tǒng)CommonJS和ES6模塊的好處。你只需要在文件頂部指定依賴,就像 Java 或 C# 那樣一句聲明:

//CommonJS
var react = require('react');
//ES6 Modules
import React from 'React'

9. Transpile to JS

***版本的JavaScript,EcmaScript 2015(被大家熟知的名字是ES6) 官方版本在 6月份發(fā)布了。瀏覽器還不能很好的支持它的很多特性,但這并無關(guān)緊要。你可以用  Babel 來體驗它的新特性。Babel 把 ES6 transpile 到 ES5,如果你能忍受這么做,你現(xiàn)在就可以享受 ES6 的新特性。JavaScript預計一年發(fā)布一次的新版本了,所以你可能一直需要transpiling 。

或者你喜歡強類型?那么你可以考慮 TypeScript

10. JS應(yīng)該自動構(gòu)建

我們已經(jīng)談到了 linting、壓縮、transpilation 和測試。但如何才能讓這一切自動發(fā)生?很簡單:使用自動構(gòu)建。Gulp 就是這樣一個結(jié)合了所有功能的工具。不過你也可以選擇 Grunt 和 Webpack。或者如果你是一個高手,你也可以使用 npm 來構(gòu)建。問題的關(guān)鍵是,不要指望人記得手動運行這些東西的,自動化是一個非常棒的選擇。

11. 使用框架或者庫

拿一些現(xiàn)成的東西來用。想保持輕量級?試試Backbone 或 Knockout。 或者 jQuery 就夠了。想要更多更全功能的?試試  Angular, Ember,,或者 React with Flux

關(guān)鍵是:

不要試圖從頭開始。站在巨人的肩膀上。

不管你選擇哪個框架,都應(yīng)該分開你的關(guān)注,這就是下一點..

12. JS Should Separate Concerns

把 JS代碼放到一個文件中的習慣很容易養(yǎng)成,或者盲目跟從你的框架的意見。當你移動到客戶端的時候,不要忘記你在服務(wù)器端學到的經(jīng)驗教訓。

這里并不僅僅意味著就像你在Angular 和 Knockout等 MVC 框架中那樣分離模型、視圖、控制器。編寫JavaScript的時候應(yīng)該像服務(wù)器端開發(fā)者那樣思考問題。把你的業(yè)務(wù)邏輯和數(shù)據(jù)訪問分離出來。

這意味著AJAX調(diào)用都應(yīng)該在一個地方。創(chuàng)建一個集中的客戶端“數(shù)據(jù)訪問層”。業(yè)務(wù)邏輯模塊應(yīng)包含純JavaScript的。這使得邏輯易于重用,易于測試,升級也不受影響。

 
責任編輯:王雪燕 來源: 程序員資源網(wǎng)
相關(guān)推薦

2015-05-25 11:04:25

超實用開發(fā)框架

2011-03-24 12:32:15

數(shù)據(jù)庫性能優(yōu)化

2016-01-08 09:43:32

開源GUI文本編輯器

2020-07-29 07:52:25

編程開發(fā)IT

2014-12-10 09:32:30

JavaScript插件

2014-12-09 14:00:58

JavaScript

2018-12-13 15:00:51

zypper命令Linux

2020-02-19 14:02:49

JavaScriptthis前端

2012-10-10 17:45:49

JavaScriptJavaScript規(guī)JavaScript控

2011-11-30 10:29:22

云計算

2025-04-27 08:06:50

2023-09-01 10:43:22

IT外包企業(yè)

2019-03-21 15:02:12

NB-IoT物聯(lián)網(wǎng)IOT

2013-07-17 10:28:44

創(chuàng)業(yè)者建議

2015-03-26 10:17:31

javascriptjavascript筆

2015-12-31 15:29:56

蘋果2015

2019-07-09 13:42:12

數(shù)據(jù)備份云計算系統(tǒng)

2011-05-16 13:44:11

C++

2023-10-04 07:52:37

2011-03-31 09:22:56

c++
點贊
收藏

51CTO技術(shù)棧公眾號

国产ts一区| 欧美性videos| 免费在线看成人av| 精品视频9999| www.久久国产| 亚洲在线资源| 亚洲成av人片一区二区三区| 日韩久久久久久久| 性中国xxx极品hd| 三级欧美韩日大片在线看| 精品国产依人香蕉在线精品| avtt香蕉久久| 国产一区二区三区亚洲综合| 色狠狠一区二区| 蜜桃视频一区二区在线观看| 成人亚洲性情网站www在线观看| 国产乱色国产精品免费视频| 国产成人精品视| 国产主播在线播放| 国产精品久久久乱弄| 亚洲精品美女久久久久| 无码人妻一区二区三区在线视频| 韩日成人影院| 亚洲va欧美va人人爽| av不卡在线免费观看| 欧洲天堂在线观看| 成人免费观看av| 91色视频在线导航| 伊人网视频在线| 视频一区二区三区在线| 97久久精品人搡人人玩| 久草国产在线视频| 亚洲精品va| 日韩在线播放av| 九九九视频在线观看| 日韩欧美在线精品| 亚洲国产精品高清久久久| 97免费公开视频| 91成人app| 欧美精品久久一区二区三区| 久久久精品麻豆| 久久久成人av毛片免费观看| 日韩欧美在线视频日韩欧美在线视频| 日韩国产成人无码av毛片| 2020国产在线视频| 亚洲欧美一区二区三区国产精品 | 韩国精品久久久999| 内射一区二区三区| 一本到12不卡视频在线dvd| 色偷偷88888欧美精品久久久 | 91高清国产视频| 欧美色片在线观看| 91激情五月电影| 国产日韩成人内射视频| 色8久久影院午夜场| 色婷婷综合视频在线观看| 日韩人妻精品无码一区二区三区| 国产精品xx| 91精品福利在线| 57pao国产成永久免费视频| 欧美激情不卡| 欧美一区二区二区| 激情av中文字幕| 精品无人区一区二区| 亚洲精品不卡在线| 丰腴饱满的极品熟妇| 超碰成人久久| 久久精品亚洲一区| 久久精品国产亚洲AV无码男同| 欧美激情综合| 555www成人网| 亚洲性猛交富婆| 韩国一区二区视频| 国产精品久久久久久久免费大片 | 日韩中文字幕视频| 精品欧美一区二区久久久久| 亚洲小说区图片区| 91高清免费视频| 中文字幕理论片| 国产精品1区2区3区在线观看| 国产精品区一区二区三含羞草| 午夜激情在线视频| 中文字幕欧美激情一区| 大桥未久一区二区三区| 岛国av免费在线观看| 欧美亚洲动漫另类| 91亚洲一线产区二线产区| 影视先锋久久| 另类少妇人与禽zozz0性伦| 国产精品第9页| 毛片av一区二区| 国产欧美日韩一区二区三区| 国产三级电影在线| 亚洲乱码国产乱码精品精的特点| 国产精品999视频| 欧洲午夜精品| 亚洲精品白浆高清久久久久久| www.4hu95.com四虎| 国精品一区二区| 国产精品高潮视频| 高清一区二区三区四区| 国产精品私人影院| 日韩欧美亚洲天堂| 成人永久在线| 亚洲视频免费一区| 国产精品999久久久| 另类中文字幕网| 久久大香伊蕉在人线观看热2| √天堂资源地址在线官网| 亚洲第一激情av| 一级做a爱视频| 国产精品密蕾丝视频下载 | 午夜欧美一区二区三区免费观看| 色呦呦呦在线观看| 欧美日韩在线观看一区二区| 国产黑丝一区二区| 91久久国产综合久久91| 午夜av中文字幕| 欧美久久在线观看| 蜜臀av性久久久久蜜臀av| 成人久久精品人妻一区二区三区| 久久久三级国产网站| 成人午夜视频免费观看| 国产一区二区三区四区五区3d| 亚洲精品久久久久久久久久久久久 | 亚洲91久久| 欧洲成人免费aa| 国产无限制自拍| 黄页网站免费观看| 日本大胆欧美人术艺术动态| 精品久久久久久中文字幕动漫| 国产在线观看免费麻豆| 欧美色中文字幕| 亚洲人成人无码网www国产 | 任你弄精品视频免费观看| 欧美精品在线第一页| 97超碰国产在线| 国产精品理论在线观看| 天美星空大象mv在线观看视频| 午夜精品福利影院| 97成人超碰免| 午夜福利一区二区三区| 欧美日韩精品在线播放| 国产精品手机在线观看| 亚洲三级色网| 狠狠色综合一区二区| 福利在线免费视频| 亚洲精品狠狠操| 亚洲欧美在线观看视频| 99久久久无码国产精品| 凹凸国产熟女精品视频| 夜夜春成人影院| 国产精品久久久久久av| av网站在线免费观看| 欧美喷潮久久久xxxxx| 91ts人妖另类精品系列| 激情另类小说区图片区视频区| 亚洲精品久久区二区三区蜜桃臀 | 国产精品最新自拍| 欧美人与物videos另类| 久久野战av| 色七七影院综合| 精品国产亚洲一区二区麻豆| 亚洲香蕉伊在人在线观| 欧美深性狂猛ⅹxxx深喉| 久久性天堂网| 亚洲午夜高清视频| 亚洲伦理网站| 欧美精品激情blacked18| 日本高清视频在线| 色88888久久久久久影院野外| 日本精品久久久久中文| 国产馆精品极品| 欧美午夜小视频| 欧美午夜精彩| 91传媒在线免费观看| 嗯~啊~轻一点视频日本在线观看| 亚洲欧美日韩直播| 一级黄色大毛片| 亚洲在线视频网站| 日韩av在线看免费观看| 美女视频黄久久| 成人黄色大片网站| 日韩aaaa| 51成人做爰www免费看网站| 牛牛精品一区二区| www.日韩欧美| 午夜国产在线视频| 宅男在线国产精品| 丰满少妇乱子伦精品看片| 欧美国产综合色视频| 午夜性福利视频| 日韩成人精品在线观看| 日b视频免费观看| 欧美综合一区| 国产麻豆乱码精品一区二区三区| 日韩av中字| 国内精品久久久久影院 日本资源| 九色在线视频蝌蚪| 精品福利在线导航| 中文字幕第三页| 五月综合激情婷婷六月色窝| a一级免费视频| 久久午夜国产精品| 国产精品99精品无码视亚| 日韩精品电影一区亚洲| 国产真人做爰毛片视频直播| 久久视频精品| 欧美国产综合视频| 91精品日本| 国产日韩精品电影| 欧美成人黑人| 97视频在线看| 亚洲综合影视| 日韩视频一区在线| 国产香蕉视频在线看| 精品国产一区a| 精品人妻av一区二区三区| 欧洲亚洲精品在线| 久久精品国产成人av| 一区二区激情视频| 亚洲欧美小视频| 国产精品素人一区二区| b站大片免费直播| 久久综合色之久久综合| 成人在线视频免费播放| 国产一区二区三区高清播放| 深夜黄色小视频| 日韩电影网1区2区| 成人一级片网站| 99精品国产在热久久下载| av在线免费观看国产| 欧美国产三区| 日本三日本三级少妇三级66| 91欧美大片| 亚洲欧美一区二区原创| 热久久天天拍国产| 亚洲欧美久久234| 欧美丝袜激情| 亚洲高清视频在线观看| 欧美三级伦理在线| 日本欧美精品久久久| 精品一区在线| 日本在线视频不卡| 久久av资源| 视频一区三区| 久久影院一区| 一区二区三区四区视频在线| 色喇叭免费久久综合网| 亚洲精品中文字幕在线| 色天天久久综合婷婷女18| 夜夜爽99久久国产综合精品女不卡 | 久久午夜国产精品| mm131美女视频| 久久精品视频一区二区| 欧美激情 一区| 中文字幕制服丝袜成人av | 成人午夜两性视频| 蜜桃精品视频| 国产区一区二区| 亚洲欧洲免费| 亚洲欧美日韩在线综合 | 国产视频一二三四区| 日韩一区二区三区在线| 肥臀熟女一区二区三区| 亚洲精品不卡在线| 懂色av中文在线| 久久精品在线视频| av影院在线| 国产精品扒开腿做爽爽爽的视频| 国产一区一一区高清不卡| 国产在线观看精品| 丁香一区二区| 欧美在线激情| 1024精品久久久久久久久| 日韩国产小视频| 麻豆九一精品爱看视频在线观看免费| 国产精品视频分类| 国产成a人亚洲精品| 特级西西人体4444xxxx| 欧美国产欧美综合| 免费在线观看黄色av| 色综合一个色综合亚洲| 999免费视频| 亚洲精品美女在线观看| 最新av网站在线观看| 欧美二区乱c黑人| 欧美性xxx| 91文字幕巨乱亚洲香蕉| 亚洲美女久久| 99中文字幕在线观看| 午夜宅男久久久| 亚洲制服在线观看| 久久网这里都是精品| 日本妇女毛茸茸| 在线视频中文字幕一区二区| 国产视频手机在线| 国产一区二区三区在线观看视频 | 国产精品精品久久久久久| 精品亚洲a∨一区二区三区18| 精品伦精品一区二区三区视频| 日本黄色精品| 国产精品免费入口| 国产在线精品国自产拍免费| 中日韩精品一区二区三区| 亚洲在线观看免费视频| 91中文字幕在线视频| 亚洲男女自偷自拍图片另类| 伊人影院在线视频| 国产精品羞羞答答| 亚洲视频分类| av免费看网址| 国产精品资源网站| 狂野欧美性猛交| 日本乱人伦aⅴ精品| 黄色av免费观看| 大胆人体色综合| 91精品国产66| 欧美国产二区| 国产日韩1区| 制服丝袜第一页在线观看| 亚洲欧美区自拍先锋| 做爰无遮挡三级| 亚洲欧洲在线观看| 美女搞黄视频在线观看| 国产厕所精品在线观看| 亚洲欧美偷拍自拍| 日韩av.com| 中文字幕制服丝袜一区二区三区| 日韩精品成人免费观看视频| 日韩成人小视频| www欧美xxxx| 国产精品一 二 三| 狠狠久久婷婷| 日本少妇一级片| 夜夜嗨av一区二区三区中文字幕| 国产熟女精品视频| 久久视频在线免费观看| 亚洲精品自拍| 男人的天堂成人| 精品一二三四在线| 久久成人小视频| 91精品国产综合久久精品性色| 香港伦理在线| 成人午夜在线观看| 午夜精品亚洲| 最新国产精品自拍| 亚洲国产视频a| 熟妇人妻系列aⅴ无码专区友真希| 欧美伦理91i| 日韩一区二区三区高清在线观看| 欧美与动交zoz0z| 国产不卡视频一区| 日本熟妇成熟毛茸茸| 亚洲级视频在线观看免费1级| 美女网站在线看| 无码免费一区二区三区免费播放| 日韩—二三区免费观看av| 天天舔天天操天天干| 欧美丰满美乳xxx高潮www| 91福利国产在线观看菠萝蜜| 国产女主播一区二区| 国产精品一卡| 国产三级短视频| 欧美一级爆毛片| 丁香花在线观看完整版电影| 久久国产精品99久久久久久丝袜| 噜噜爱69成人精品| 18精品爽国产三级网站| 日韩精品一区二区三区中文不卡 | 90岁老太婆乱淫| 欧美色综合网站| 午夜羞羞小视频在线观看| 国产午夜精品一区| 美女一区二区久久| 麻豆亚洲av熟女国产一区二| 日韩成人激情在线| 自拍偷拍亚洲图片| 久久久一本二本三本| 国产精品家庭影院| 亚洲精品成av人片天堂无码 | 少妇高潮一区二区三区99| 99热这里只有精品免费| 久久久国产一区二区三区四区小说| 在线观看日韩一区二区| 国内外成人免费激情在线视频| 九色精品91| 午夜性福利视频| 欧美视频一区在线观看| 韩国成人免费视频| 亚洲不卡1区| 懂色av一区二区三区蜜臀| 青娱乐在线免费视频| 欧美激情综合色| 国产韩国精品一区二区三区| 久久福利小视频| 这里是久久伊人| 成人自拍av| 国产妇女馒头高清泬20p多| 国产精品乱码妇女bbbb|