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

快速網站的簡單JavaScript性能優化技巧

開發 前端
JavaScript 可以提供高度交互的網站,以 HTML 單獨無法做到的方式積極吸引用戶。但是,增加的參與度會帶來性能成本,如果允許失控,可能會對網站的可用性產生負面影響。

如果你的網站速度很慢,并且認為頁面中嵌入的邏輯可能是原因,那么你可以使用以下五個 JavaScript 性能優化技巧來為用戶加快速度。

1.減少onReady事件的數量

一旦加載了 HTML 頁面并應用了所有 CSS 選擇器,就會觸發 onReady 事件。通常,開發人員會在此處放置初始化頁面組件和啟動各種 JavaScript 函數所需的邏輯。

然而,隨著時間的推移,開發人員傾向于向頁面添加越來越多的 onReady 事件。在故障排除例程中,通常會添加 onReady 事件來解決問題,但不會在解決問題時將其刪除。其他時候,與給定 Web 組件關聯的 HTML 會從頁面中刪除,但相應的 onReady 事件不會,這會導致多余的 JavaScript 不必要地消耗時鐘周期。此外,onReady 事件通常被編碼到一個通用的 JavaScript 文件中,該文件在每次頁面加載時都會運行,即使該函數僅在少數幾個頁面上需要。

2. 使用 let not var

當使用 var 關鍵字聲明 JavaScript 變量時,它在整個頁面的全局范圍內,并在頁面的整個生命周期中維護在內存中。但是,當使用 let 關鍵字聲明變量時,將應用塊范圍。因此,該變量會在塊執行后從內存中刪除。

如果 Ajax 響應、JSON 數據或 XML 等長文本字符串保存在全局變量中,瀏覽器會很快耗盡可尋址內存,這將嚴重影響頁面性能。一個非常容易實現的 JavaScript 性能優化技巧就是用 let 替換代碼中的每個 var。

3. 縮小合并

如果你的網頁鏈接到多個 JavaScript 庫,一個快速簡單的優化方法是將所有這些 JavaScript 庫合并到一個文件中。

當 JavaScript 加載時,它會阻止其他資源的下載,例如圖像、JSON 和 CSS 文件。并且由于瀏覽器允許與 Internet 建立的外部連接數量有限,如果你引用了七個或八個外部 JavaScript 文件,你可能會完全阻止下載可能用于呈現內容的其他資源顯示在首屏之上。通過將所有 JavaScript 組合到一個文件中,只使用一個外部連接,這允許瀏覽器同步下載其他資源。

另一種減小 JavaScript 文件大小的簡單方法是對它們應用最小化程序,例如 JSCompress。最小化器會去除空格和不必要的文本元素,從而減小 JavaScript 文件的大小。反過來,這優化了 JavaScript 文件的下載時間。將多個 JavaScript 文件合并為一個以減少傳出網絡連接的數量。

4. 不要重新發明 JavaScript API

JavaScript 有幾個內置的 API,允許對集合或數組進行高效的迭代。使用 Array 的原型構造函數,你可以使用類似 lambda 的語法將函數應用于列表中的所有項目或執行操作,例如排序或反轉。

這些內置方法非常高效,并由瀏覽器進行了優化。但是,一些開發人員并不了解這些方法,而是編寫迭代循環來達到相同的目的。

無需自己重新發明這些函數式方法。這不僅浪費時間,而且還引入了不必要的 JavaScript 性能問題。

5. 在服務器上執行密集邏輯

將計算操作卸載到客戶端的能力是客戶端計算的一個關鍵優勢,但客戶端渲染也可能會給功率不足的手持設備帶來巨大的負載。

例如,如果渲染圖表或電子表格需要大量計算,并且該計算導致 JavaScript 性能問題,請考慮將其移動到服務器并簡單地將內容作為預先計算的 HTML 交付給客戶端。瀏覽器在靜態 HTML 顯示上比在復雜的、內存密集型的 JavaScript 函數運行上要高效得多。

JavaScript 是在最終用戶訪問你的網站時更好地參與和保留他們的關鍵,但是開發人員應該始終意識到涉及 JavaScript 時對性能的影響。注意這五個 JavaScript 性能優化技巧,以幫助你的 Web 開發團隊避免一些常見的網站性能陷阱。


責任編輯:華軒 來源: 今日頭條
相關推薦

2009-04-16 16:57:58

DotNetNuke優化網站開發

2020-03-25 08:00:32

Kubernetes節點工作

2022-01-09 23:06:39

JavaScript

2010-05-28 10:23:59

JavaScriptWeb

2011-06-28 15:14:10

ASP.NET性能優化

2024-09-26 08:36:11

JavaScript性能優化

2024-12-02 14:28:17

JavaScriptWeb開發

2011-09-29 09:50:44

JavaScript

2016-10-21 16:05:44

SQLSQL SERVER技巧

2020-12-17 07:52:38

JavaScript

2019-08-21 10:53:29

.NET性能優化

2012-03-12 09:33:04

JavaScript

2009-06-16 16:39:49

Hibernate性能

2024-09-14 11:23:19

2019-01-14 08:06:37

JavaScript

2013-06-08 14:19:05

性能優化KVM

2011-07-11 15:26:49

性能優化算法

2012-07-23 10:22:15

Python性能優化優化技巧

2019-02-25 07:07:38

技巧React 優化

2009-12-09 17:33:22

PHP性能優化
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品黄视频 | 日韩在线免费视频 | 一级特黄色毛片 | 精品久久久久久亚洲综合网 | 欧美6一10sex性hd | 亚洲天堂一区二区 | 日韩视频免费 | 久久久综合精品 | 久久高清免费视频 | 国产精品不卡一区 | 欧美激情亚洲激情 | 99精品电影 | 国产成人精品综合 | 成人精品毛片 | 久久久久国产精品 | 日本欧美国产在线观看 | 久久国产免费 | 国产一二区免费视频 | 婷婷午夜天 | 国产9久| 日韩欧美亚洲 | 欧美一级三级在线观看 | 色视频网站 | 日韩成人久久 | 欧美福利 | a级片在线观看 | 久久精品国产亚洲 | 麻豆久久精品 | 色资源站 | 福利视频一区二区三区 | 日本精品一区二区三区视频 | 国产激情91久久精品导航 | 欧美综合一区 | 日韩欧美在线免费观看视频 | 国产一区91精品张津瑜 | 这里有精品 | 久久久精品黄色 | 日韩精品免费 | 精品久久久久久久久亚洲 | h视频免费在线观看 | 欧美一区二区免费电影 |