《高性能javascript》隨筆

一、css文件在head標籤中引入,保證在渲染結構的時候進行樣式渲染
二、Js文件放在body的底部,確保在渲染dom樹的時候不會出現js阻塞
三、函數內的變量是訪問速度最快的,全局變量的訪問速度是最慢的,減小全局變量的訪問
四、函數中使用屢次全局變量的時候能夠把全局變量賦值給一個新的局部變量
五、閉包會影響內存和性能,減小沒必要要的閉包函數的使用
六、儘可能避免使用對象成員,使用的話同一個函數中避免屢次引用對象成員
七、ECMAscript和DOM是兩個獨立的部分,每次訪問都會形成性能的損耗,因此要減小訪問DOM的次數
八、選擇合適的選擇器能提升性能
九、減小會致使重繪和重排版的操做,將多個DOM操做改變合併到一個批次中一次性執行
十、當須要對DOM元素進行屢次修改時,1、摘除元素,2、進行修改,3、將元素放回文檔,這樣只會引起兩次重排版
十一、減小對佈局信息的查詢次數,若是須要使用變量
十二、重排版的部分越小執行速度越快,大部分的重排版執行時可能出現卡頓
1三、使用事件託管的方式
1四、for-in循環比其餘三種循環開銷要大,非必要是不適用for-in
1五、Js在運行時會中止線程中的任務,因此js運行任務要儘快結束以避免對用戶體驗形成影響
1六、調查發現單個js操做運行的時間最大是100ms,不然算是運行慢的了
1七、使用定時器將長時間的js執行腳本成爲較短的片斷
1八、將一個運行時間較長的任務分解成多個小任務
1九、多個定時器被同時間建立會影響性能,同一時間只存在一個定時器纔不會帶來性能問題
20、根據項目需求選擇正確的數據格式和與之對應的傳輸技術
2一、儘可能使用json輕量的數據形式,XML冗長且解析緩慢
2二、建立新對象和新數組的時候使用直接量比非直接量形式建立和初始化更快
2三、原生方法老是比JavaScript寫的東西要快,儘可能使用原生方法
2四、合併js文件,減小HTTP請求的數量
2五、使用YUI壓縮器緊湊處理js文件
2六、使用CDN提供js文件,提供性能,管理壓縮和緩存
2七、使用性能分析器找出腳本運行時慢的部分,並對其進行優化css

相關文章
相關標籤/搜索