最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

六星云課堂:JavaScript性能優(yōu)化技巧匯總,助你成為更好的開發(fā)者!

2022-06-07 10:16 作者:六星云課堂  | 我要投稿

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

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



1.減少onReady事件的數(shù)量

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

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

2. 使用 let not var

當使用 var 關(guān)鍵字聲明 JavaScript 變量時,它在整個頁面的全局范圍內(nèi),并在頁面的整個生命周期中維護在內(nèi)存中。但是,當使用 let 關(guān)鍵字聲明變量時,將應用塊范圍。因此,該變量會在塊執(zhí)行后從內(nèi)存中刪除。更多關(guān)于JavaScript 性能優(yōu)化技巧的相關(guān)知識,可以考慮通過參加web前端培訓來學習,有專業(yè)老師指導,有全面系統(tǒng)的課程,學起來又快又輕松。

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


3. 縮小合并

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

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

另一種減小 JavaScript 文件大小的簡單方法是對它們應用最小化程序,例如 JSCompress。最小化器會去除空格和不必要的文本元素,從而減小 JavaScript 文件的大小。反過來,這優(yōu)化了 JavaScript 文件的下載時間。將多個 JavaScript 文件合并為一個以減少傳出網(wǎng)絡連接的數(shù)量。在Web前端培訓中,有理論課程+實踐項目一起學習,深化所學知識,積累項目經(jīng)驗,獲得快速提升。

4. 不要重新發(fā)明 JavaScript API

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

這些內(nèi)置方法非常高效,并由瀏覽器進行了優(yōu)化。但是,一些開發(fā)人員并不了解這些方法,而是編寫迭代循環(huán)來達到相同的目的。

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

5. 在服務器上執(zhí)行密集邏輯

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

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

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

以上就是本次分享的全部內(nèi)容,想學習更多web技巧,歡迎持續(xù)關(guān)注六星云課堂!

六星云課堂:JavaScript性能優(yōu)化技巧匯總,助你成為更好的開發(fā)者!的評論 (共 條)

分享到微博請遵守國家法律
宣威市| 静乐县| 广西| 金平| 唐海县| 河间市| 内江市| 大英县| 从江县| 赤城县| 藁城市| 河北省| 阿荣旗| 正定县| 崇礼县| 太保市| 泾川县| 双桥区| 信阳市| 嘉兴市| 荃湾区| 昌宁县| 聊城市| 克东县| 罗江县| 桓台县| 广元市| 临澧县| 苏尼特右旗| 湖州市| 得荣县| 安福县| 太康县| 万荣县| 马尔康县| 故城县| 名山县| 清苑县| 玛沁县| 大庆市| 弥勒县|