成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

提高程序執行效率 Web開發技巧大串燒

開發 前端
目前的Web應用程序都趨于復雜化,從用戶的角度而言,如何提高用戶操作的響應速度,加快程序的執行效率,是Web開發人員應考慮的問題。

目前的Web應用程序愈發的復雜化,包括擁有富客戶端以及大量的JavaScript編碼等等,從用戶角度而言,讓頁面加載得更快、對用戶的操作響應得更及時,能夠給用戶提供更為友好的體驗,這就需要開發人員應提高應用程序的執行效率,以下是關于提高程序執行效率的小技巧。

相關文章推薦:提高Web網站性能 JavaScript優化細節

1.盡量避免使用DOM。當需要反復使用DOM時,先把對DOM的引用存到JavaScript本地變量里再使用。使用設置innerHTML的方法來替換document.createElement/appendChild()方 法。

2.eval()有問題,new Fuction()構造函數也是,盡量避免使用它們。

3.拒絕使用with語句。 它會導致當你引用這個變量時去額外的搜索這樣的一個命名空間,with里的代碼在編譯時期是完全未知的。

4.使用for()循環替代for…in循 環。因為for…in循環在開始循環之前需要Script引擎創建一個含有所有可循環屬性的 List,需要多檢查一次。

5.把try-catch語句放在循環外面,不要放在循環里面,因為異常是很少發生的,放在外面避免每次都要執行它們。

6.甚至圣經里都提到過這個 – 不要全局的。全局變量的生命周期貫穿整個腳本的生命周期,而本地變量的存在范圍隨著本地命名空間的銷毀而消失。當在函數或其它地方引用一個全局變量時,腳 本引擎需要搜索整個全局命名空間。

7.fullName += 'John'; fullName += 'Holdings';執行速度快于fullName += 'John' + 'Holdings';

8.如果你需要把多個字符串連接起來,最好是把他們做成一個數組,然后調用join()方法實現這個操作。這種方式在生成HTML片段時尤其有效。

9.對于簡單的任務,最好使用基本操作方式來實現,而不是使用函數調用實現。例如val1 < val2 ? val1 : val2;執行速度快于Math.min(val1, val2);,類似的,myArr.push(newEle);慢于myArr[myArr.length] = newEle;

10.將函數的引用作為參數傳遞到setTimeout()和setInterval()里優于將函數名作為字符串參數傳遞(硬編碼)。例如,setTimeout(”someFunc()”, 1000)執行效率慢于setTimeout(someFunc, 1000)

11.當進行遍歷操作時避免使用DOM操作。通過像getElementsByTagName()這 種方法得到的DOM元素隊列都是動態的;有可能在你還沒有對它遍歷完成時,它已經被改變。這有可能導致死循環。

12.當你對對象的成員(屬性或方法)進行反復操作時,先存儲對它們的引用。例如var getTags = document.getElementsByTagName; getTags(’div’);

13.在任何的代碼段里,在局部變量范圍外存放一個這個局部變量的引用。例如

  1. function foo(arr) {  
  2. var a = ’something’;  
  3.  
  4. //變量 ‘a’ 對于下面的一段就是范圍外變量,這個變量的引用在很多情況下會有用處。  
  5. for (var i = 0j = aloopLen = arr.length; i < loopLen; i++) {  
  6. //do something  
  7. }  

14.for(var i=0; i < someArray.length; i++) {…}的執行效率慢于for (var i=0, loopLen=someArray.length; i<loopLen; i++) {…}。

15.在HTTP頭信息里加入緩存控制過期和最大存活時間標記。

#p#

16.優化CSS。要使用<link>方式,而不要使用@import方式。請參考這個優秀的文檔http://www.slideshare.net/stubbornella/object-oriented-css

17.使用CSS技術來優化圖片資源。關于Web前段優化,歡迎訪問:改善用戶體驗 Web前端優化策略總結

18.用GZip方式壓縮.js和.css文件。如果你使用的是Apache,在 .htaccess 里設置壓縮方式,你的HTML, XML和JSON也同時會被壓縮。

  1. AddOutputFilterByType DEFLATE text/html text/css text/plain text/xml application/x-javascript application/json
  2.   

19.使用JavaScript壓縮工具。除了使用YUI和JSMin外,你還可以試一試Google Closure http://closure-compiler.appspot.com/home。

20.優化每個頁面上的各種資源,把它們拆分到各個子域上,這么它們就能夠并行下載。請參考http://yuiblog.com/blog/2007/04/11/performance-research-part-4/

21.將CSS樣式表放在頁面的最頂端,這樣能方便包括IE在內的瀏覽器進行解析。

22.盡量將DOM結構保持的越簡單越好。DOM的體積會影響相關的操作效率,像查找, 遍歷,DOM改動都有影響。document.getElementsByTagName(’*').length這 個值越小越好。

23.注意你使用的選擇器。例如,如果你想獲取一個ul下的直接子元素,使用jQuery(”ul > li”)而不要使用jQuery(”ul li”)

24.當切換元素的可見性時(display),請記住:element.css({display:none})的 速度快于element.hide() 和 element.addClass(’myHiddenClass’)。 除非在一個循環里,我選擇element.addClass(’myHiddenClass’), 這樣會使代碼更簡潔 – 不要使用inline CSS和JavaScript。

25.當你使用完對DOM的引用變量后,要把它置為NULL。

26.使用AJAX時,GET的執行效率高于POST。所以要盡量使用GET方式。只是要注意一點,IE只允許你用GET傳送2K的數據。

27.小心使用腳本動畫。沒有硬件的支持,動畫會執行的很慢。盡量避免使用那些沒有實際價值的動畫效果。

28.如果你的background-image對于這個圖片的容器太小的話,請避免使 用background-repeat。如果你的背景圖片需要來回填充很多次才能充滿背景,那么將background-repeat屬性設置成background-image 和repeat-x 或 repeat-y來 達到填充背景的效果的做法是不明智的,這種填充方式的效率特別的低。你應該嘗試使用一個足夠大的圖片來做background-image并 且使用background-repeat: no-repeat。

29.布局時不要使用<table>。 <table>在瀏覽器完全把它畫出來之前需要反復繪制好幾次。因為DOM中<table>是很少見的一種之后輸出的會影響之前輸出的顯示效果的元素。對于表格數據來說,你可 以使用table-layout:fixed; 這是一種更有效的現實算法,根據CSS 2.1技術說明,這種寫法可以讓表格一行一行的輸出。

30.盡可能的使用原始JavaScript。限制JavaScript框架的使用。

文章轉自外刊IT評論,

原文地址:http://www.aqee.net/2010/06/28/30-best-practices-to-boost-your-web-application-performance/

【編輯推薦】

  1. 探討應當如何提高PHP遞歸效率
  2. 對Python技巧——代碼效率的實際應用詳解
  3. 深入探討如何提高PHP運行效率
  4. 提高Web網站性能:JavaScript優化細節
  5. 注重Web用戶體驗 提高頁面瀏覽速度的九大要素
責任編輯:王曉東 來源: 外刊IT評論
相關推薦

2010-01-04 11:23:59

SilverLight

2023-11-20 09:57:03

內聯函數C++

2015-04-30 08:58:57

程序員工作效率小習慣

2014-10-13 10:36:15

程序員職場價值技巧

2018-07-11 10:39:11

程序員效率工具

2015-06-04 10:29:16

程序員工作效率

2015-04-16 10:15:45

PHPPHP執行效率PHP技巧

2022-09-05 14:17:48

Javascript技巧

2019-10-18 09:08:35

Vue組件驗證碼

2019-10-12 10:09:41

Vue 組件對象

2015-11-16 11:53:06

程序員效率加班

2015-07-22 09:44:07

Android開發Web工具

2009-12-22 19:14:36

WCF效率

2011-09-30 11:13:31

51CTO博客一周熱門程序員

2023-10-27 18:11:42

插件Postman代碼

2024-04-29 08:16:18

2023-09-07 10:21:03

VS Code 技巧提高開發效率

2024-03-17 20:01:51

2015-08-04 10:51:26

vim效率技巧

2011-03-21 15:51:27

SQL執行效率
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美国产视频一区二区 | 五月激情综合网 | 久久久美女 | 亚洲+变态+欧美+另类+精品 | xnxx 日本免费 | 亚洲电影第三页 | 国产一区二区视频在线 | 神马福利 | 国产精品视频免费观看 | 91精品一区二区三区久久久久 | 亚洲一区 中文字幕 | 国产精品美女久久久久久久网站 | 久久精品一区 | 在线观看国产三级 | 日本天堂视频在线观看 | 精品国产视频 | 日韩欧美专区 | 欧美精品一二三区 | 日韩中文字幕免费在线观看 | 北条麻妃一区二区三区在线观看 | 久久久久免费 | 中文字幕av一区 | 国产精品揄拍一区二区久久国内亚洲精 | 天天干狠狠干 | 视频1区 | 男人av网 | 中文字幕在线视频免费观看 | 一区二区三区福利视频 | av网站在线免费观看 | 美女视频黄色的 | 男女羞羞免费网站 | 91免费观看 | 日韩欧美成人一区二区三区 | 久久夜色精品国产 | av网站在线播放 | 中文字幕精品视频 | 91精品国产高清一区二区三区 | 男女污污动态图 | 成人免费在线视频 | 中文字幕亚洲国产 | 激情欧美一区二区三区 |