當前位置:首頁 » 網頁前端 » 前端性能瀑布圖
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

前端性能瀑布圖

發布時間: 2023-07-04 13:49:46

『壹』 請問,有沒有一款綜合性的前端測試工具,集成常用的前端測試工具

沒有特別集成的總和工具,給樓主列舉了一系列的測試工具
1. Browser Shots

Browsershots工具提供了對你的Web設計在不同操作系統和瀏覽器下截圖的功能。它是一個免費的在線開源Web工具,使開發人員能以一種便捷的方式同時測試網頁的瀏覽器兼容情況。在Browsershots上提交的網址將被添加到一個任務隊列。隨後一些分布式的計算機將在各自的瀏覽器中打開該網站並截圖。最終可通過一個中央伺服器來查看這些上傳的截圖。

2. IETester

IETester是一個免費的Web瀏覽器調試工具,可以模擬出不同的js引擎來幫助程序員設計效果統一的代碼。IETester可以在獨立的標簽頁中開啟IE 5.5、IE 6、IE 7以及最新的IE 8(9) beta等不同版本的IE。

3. WebPage Speed Test

使用該工具可在全球不同位置及不同瀏覽器中測試網頁的真實鏈接速度。除了簡單的測速,你還可以執行一些其他高級測試,如多步執行(multi-step transaction)、視頻錄制、內容阻止等。測試結果將提供豐富的診斷信息,包括資源載入瀑布圖、網頁速度優化檢查及改進建議等。

4. Mobile testing

使用這個工具你可以查看你的網站在移動設備上的效果。可以設置移動設備的類型、錄屏,以及結果不公開。

5. Feed validator

免費的W3C Feed校驗服務,可用於查找Atom和RSS Feed中的語法錯誤。

6. Instant Website Test

該工具提供免費即時的網站性能測試服務。可從全球不同位置探測你的網站載入速度有多快,並查明是何者降低了頁面性能。

7. Pingdom

輸入URL,即可測試頁面的載入時間,分析並發現加速的「瓶頸」所在。

8. Link Checker

該工具可用於搜尋查明你網站內的所有鏈接里是否有斷鏈。

9. DNS Health Checker

正確的DNS設置對網站運行來說是至關重要的。Pingdom的DNS Health test工具可以幫助你發現錯誤的DNS設置,並檢查域名解析是否正確。它能夠自動發現你所指定域名使用的DNS伺服器,然後執行一系列迭代測試來查明域名設置及DNS伺服器響應是否正確。

10. Load impact
Load Impact是一個在線網站負載測試服務,可以幫助你測試網站的負載和壓力。

11. Google web page tester

Google的Page Speed Service,可以為第三方網站提供網頁加速服務。你只需要把以前的域名CNAME到ghs.google.com,瀏覽者就不再直接訪問網站的伺服器,而是轉到Google的伺服器上。Google的伺服器會抓取網站伺服器上的網站內容,然後進行重寫、緩存。它使用類似CDN(內容分發)的原理,而比普通只提供緩存的CDN多了內容重寫的環節,自動為網頁提供合並CSS、合並JavaScript、將CSS移到HTML的Head、壓縮圖片、優化圖片、緩存圖片、碎片域名、gzip資源等網頁加速技巧。

12. Validate you HTML code

該工具可用於檢查Web文檔中HTML、XHTML、SMIL、MathML等標記的有效性。

13. Website vulnerability tool

免費的在線網路漏洞掃描工具,可用於檢查你的網站的安全性。

『貳』 你最喜歡用哪款前端開發工具為什麼

前端開發最爽的地方就在於,一個編輯器,一個瀏覽器就足矣走天下。

編輯器——VSCode

前端開發利器,超級好用的編輯器,對於大前端來說更是不可多得。由微軟出品,跨平台支持,顏值高,易上手,豐富的插件支持。下面推薦幾個前端常用插件。

調試工具: 前端性能優化工具:

Yellow Lab Tools :一款Web性能及前端質量測試工具。與其他工具不同的是,它有一些在其他工具上無法看到的獨特功能,例如頁面載入時 JavaScript 與 DOM 互動和其他程序代碼驗證問題。

DOM monster :你只需要添加到你的瀏覽器書簽中,在任何需要調試的頁面點擊這個書簽,它就能夠幫助你列出目前頁面出現的性能問題。

前端開發是目前一個非常火的行業,就業前景和薪資水平都非常不錯,至於開發工具的話,那就非常多了,大部分代碼編輯器、IDE環境都支持,下面我簡單介紹4個非常不錯的前端開發工具,感興趣的朋友可以嘗試一下:

01 代碼編輯器

這是目前前端開發一個非常流行的開發工具,在業界非常受歡迎,免費、開源、跨平台,由微軟自主研發,可以說是良心產品,常見的智能補全、代碼高亮、語法提示等功能這個軟體都能很好支持,除此之外,插件擴展非常豐富,可以很好的進行代碼編輯和調試,輕巧靈活,運行速度快,對於前端開發來說,是一個非常不錯的選擇:

這也是一個比較輕巧靈活的代碼編輯器,文本編輯功能強大,完美支持3大操作平台,但原則上不免費,和VS Code類似,Sublime Text也支持自動補全、語法提示、代碼高亮等常見功能,除此之外,針對前段開發也提供了非常多的插件,不管是編輯還是調試代碼來說,都非常方便,對於前端開發來說,也是一個不錯的選擇:

02 IDE環境

這是一個純粹的國產Web IDE開發工具,目前在前端開發中也有著較高的使用率,常見的自動補全、代碼高亮、語法提示、錯誤檢查等功能這個軟體都能很好兼容,除此之外,界面柔綠、清爽護眼,針對Vue專門打造了插件擴展,可以很好的提高開發效率,還支持安卓、iOS打包,對於前端開發來說,也是一個非常不錯的工具:

這是一個非常專業的Web IDE開發工具,Jetbrains公司的產品,被譽為「Web前端開發神器」、「最智能的JavaScript IDE」,除了基本的智能補全、代碼高亮、語法提示等常見功能,這個軟體還支持代碼分析與重構、 聯想查詢、 單元測試等高級功能,因此在開發效率上更高,也更適合大型項目,對於多人協作的前端開發來說,是一個非常不錯的選擇:

WebStorm

和idea同屬於jetbrains公司開發的,它是旗下一款JavaScript開發工具,被廣大中國JS開發者譽為「Web前端開發神器」、「最強大的HTML5編輯器」、「最智能的JavaScript IDE」等。

早起作為一個插件可以集成與Eclipse中來開發前端,現在已經獨立出來,也是我最早接觸js所使用的一款開發工具,如果熟悉了Eclipse快捷鍵的童鞋可以快速上手。


一款代碼編輯器,藉助豐富的插件資源,可以擴展成強大的前端開發工具,和IDE相比,屬於一款輕量級的,啟動特別快。


Atom

作為開源老大哥GitHub出的一款代碼編輯器,和上面那個比較而言,插件略少,但和GitHub無縫結合,尤其是markdown編寫,界面也很漂亮。

TextMate是Mac下的著名的文本編輯器軟體,與BBedit一起並稱蘋果機上的emacs和vim。尤其適合程序員使用,可以定製許多貼心使用的功能。



Emacs即Editor MACroS(宏編輯器),是一種強大的文本編輯器。Emacs使用了Emacs Lisp這種有著極強擴展性的編程語言(它的核心是一個Emacs Lisp解釋器),並實現了文本編輯支持等的擴展。

Notepad++是 Windows操作系統下的一套文本編輯器(軟體版權許可證: GPL),有完整的中文化介面及支持多國語言編寫的功能(UTF8 技術)。

VSC-VSCode

輕量快速,高顏值,社區開源,豐富擴展,微軟支持

還有超好用的遠程開發(vscode remote)和協作(live share)支持

HTML通常會和JavaScript、CSS同時出現。三者均是前端開發最常用到的。目前最常用到的HTML其實就是HTML5。常用的前端編程軟體有HBuilder、Sublime Text等等。

HBuilder是一款免費的國產前端開發工具,編者用的就是HBuilder,對於小白和英語不太好的前端開發者這是一款難得的IDE。對代碼自動補全方面簡直是強大到沒朋友。強力推薦。

Sublime Text是一個輕量級的編輯器,不端支持前端的html,js,css。還支持覺得多數的後端語言,比如C語言、java、python等。sublime text的強大之處是支持各種插件而且快捷鍵非常好用,可以極大的提高開發效率。缺點是代碼提示方面不如Hbuilder。

很高興能回答你的問題,作為一個後端開發,也曾經開發過前端,也用過很多前端開發工具。

1.sublime text用著確實不錯,但是代碼開發提示不強,平時用著文本編輯器還是可以的。

2.hbuild+用了一段時間各種不適用,最後就卸載了。

3.vs code用著一段時間寫vue,需要安裝插件,而且提交代碼用感覺不方便,把不想提交的最後提交了,導致代碼沖突,也許是因為自己用不熟。

4.webstorm 推薦使用,代碼智能提示,而且提交代碼方便。

無論是Python、Java、javascript,當我們選擇一款開發工具時,很多人都會首先想到jetbrain全家桶,Webstorm、IDEA、Pycharm....不得不說,jetbrain在開發工具方面真的是頗有心得、爐火純青。

但是,如果做前端開發,我認為除了jetbrain的webstorm,還有很多選擇,而其中我最為推薦的當屬VS Code,下面就來介紹一下。

VS Code

微軟在開發工具領域已經有了多年積淀,而VS Code有時微軟結合了visual studio和其他開發工具,不斷改進、優化推出的一款免費開發工具。

可以說VS Code是當下最為熱門的開發工具之一,對比於eclipse、IDEA這些老牌開發工具,微軟對於VS Code的改變更為大膽創新,已經處於領頭羊的地位。每年微軟開發者大會,都會對 VS Code進行大幅度的創新,經過多年的優化,VS Code已經讓很多開發者愛不釋手。

首先說一下它幾個為人熟知的優點,

首先說一下輕量化,我覺得僅憑這一點,就足以讓jetbrain全家桶汗顏。無論是webstorm、還是IDEA,最令人痛苦的就是打開過程,臃腫、漫長,載入工程項目和配置項需要多大幾分鍾,令人無法忍受。而VS Code則不同,它更像一個編輯器,能夠秒級打開,速度堪比UE、notepad++這些文本編輯器。

其次說一下豐富插件,豐富的插件造就了VS Code完整的生態,「你想要的,這里都有」,無論是標簽樣式還是DEBUG或者功能增強,VS Code都有非常多熱門的插件,使得你的開發效率大大提升,當然,前端需要的那些優質插件這里都有。

其實,讓我轉向VS Code並非上述這兩點,而是 遠程開發 。

我覺得這是微軟大膽創新和引領者角色必然的產物,讓很多其他開發工具很難望其項背。

有了VS Code遠程開發功能,我們可以實時同步本地和伺服器代碼,不需要再去復雜的配置遠程伺服器,對於項目管理也非常方便。

WebStorm和PS

尤其PS,平時生活中也需要用到,挺方便的

喜歡用webstorm,atom和vs code,sublimetext都裝了,幾乎只用webstorm,atom界面是漂亮,也是我第一個下載安裝的,裝了各種插件,那時初學,感覺提示不全,還有就是插件安裝了幾個後開機明顯變好慢,無奈下了webstorm,感覺很爽

Google PageSpeed Insights 可以為網站生成性能報告,它在移動設備和桌面設備上都是免費的。並且還給出了影響頁面載入速度的原因,並為這些問題提供了解決方案。網站速度按照 100 分進行劃分,其中:

2. Pingdom Website Speed Test

Pingdom Website Speed Test 可以全面分析影響頁面Web速度的因素。此外,還可以查看網站在亞洲、歐洲等多個不同的地理位置的性能信息。

3. WebPagetest

WebPagetest是 AOL 開發的一款在線的免費性能評測網站,從全球多個地點運行免費網站速度測試。可以運行簡單的測試或執行高級測試,包括多步驟事務、視頻捕獲、內容阻塞等等。還將依據測試結果提供豐富的診斷信息,包括資源載入瀑布圖,頁面速度優化檢查和改進建議,會給每一項內容一個最終的評級。

4. GTmetrix

GTmetrix 是一個類似於 pingdom 的工具,可以快速輕松地測試網站速度。它主要有PageSpeed和YSlow兩部分組成,並提供相應的得分數據,能夠真實的反應出網站的性能,並且會提供可行性建議來幫助改善網站性能。

5. Keycdn Tool

Keycdn Tool 是一個在全球 10 不同地點的網站速度測試工具。它允許測試任何頁面的性能。返回的結果將提供請求、內容大小和載入時間等詳細信息。此外,還有一個完整的瀑布圖,詳細說明了每個資源的載入時間和 HTTP 頭。

6. GiftOfSpeed

GiftofSpeed是一款免費網站載入速度測試工具,可以在上面獲得網站綜合性能信息,它能夠展示網站載入時間以及評估網站有哪些需要改進的地方,並給予一個客觀的綜合評分。

GiftofSpeed 的測試結果以瀑布流展示,可以很容易看到網站載入速度,每一項資源的的載入順序、大小與響應時間的長短,方便了解網站的各項載入資源。此外,它還提供了載入時間最長的內部文件以及外部文件,從而分析出是由哪些因素影響了你網站的載入速度,就可以專門針對這些載入時間較長的元素進行優化,從而最大限度提升網站載入速度。

7. Pagelocity

Pagelocity 是一個網站分析性能測試工具。這個工具也提供了追蹤競爭對手的能力。代碼檢視圖在類似工具中是獨一無二的。如果想知道 TTFB 和圖形化 DOM 元素等,都能通過這項工具獲取到。

8. Sucuri Loadtime Tester

Sucuri Load Time Tester 是一個網站分析性能測試工具,它用不同的顏色表示網速快慢,可以很直觀地看出測試網站在不同國家的運行速度。綠色表示暢通,沒有顏色的普通數字表示一般,黃色表示中等偏慢,紅色表示緩慢。

9. GEEKFLARE

GEEKFLARE 這是一套免費的性能測試工具,用於測試網站的 DNS、安全性、性能、網路和 SEO 等問題。

10. Dareboost

DareBoost 是一個免費網站速度測試和網站分析工具。它提供超過 100 種不同的檢查項目用以分析你的網站的速度。可以測試桌面端與行動頁面、Firefox 與 Chrome 和五個節點的速度差異。

『叄』 計算機前端開發具體是什麼,能解釋一下嗎還有具體看圖

前端是近幾年才提出來的,前端開發簡單來說就是:網站,移動web等頁面開發。相比於傳統網頁製作得要求更多,不僅要精通HTML,CSS,JS等基本技能,還要熟悉伺服器請求,熟悉一種伺服器語言如:php等。現在大學基本上還沒有開設一門專門針對前端開發的課程,不過有入門網頁開發課程,屬於軟體專業!

『肆』 web前端開發開發技術架構有哪些_web前端框架技術概述

前端的應用非常廣泛,基本網站、APP、HTML5小程序等都需要前端開發,所以只要是互聯網產品基本都需要前端。

前端程序猿切頁面寫頁面,Web上、H5上的炫酷效果,是前端開發大展身手的地方。最常見的用於前端開發的技術組合是:

HTMLCSSJavaScript。

web前端是在開發人員中最直接面向產品、面向用戶的設計人員,一個開發團隊的成果是要靠web前端去展現,因為用戶不會去關心後台的處理有多麼強大。

後端開發是寫後台,各種業務邏輯、數據處理、模罩蔽塊介面、客戶端介面等等。後端開發者通常精通於一種Web編程語言和一個資料庫管理系統。電商平啟握台點擊篩選條件下面為你篩選出來的寶貝的功能以及付款人數數據的變化等都是由後台來實現提供的。

目前web產品交互越來越復雜,用戶使用體驗和網站前端性能優化這些都得靠web前端去做。

前端開發則是物旁州網站的前台代碼實現,包括基本的HTML和CSS以及JavaScript/ajax,最新的高級版本HTML5、CSS3,以及SVG等。

前端開發需要學習的技術

1掌握基本web前端開發技術:HTML、CSS、JavaScript、DOM、BOM、AJAX等,而且要了解它們在不同瀏覽器上的兼容情況、渲染原理和存在的Bug

2必須掌握網站性能優化、SEO和伺服器端開發技術的基礎知識

3必須學會運用各種web前端開發與測試工具進行輔助開發

4除了掌握技術層面的知識,還要掌握理論層面的知識,包括代碼的可維護性、組件的易用性、分層語義模板和瀏覽器分級支持等

5未來web前端開發工程師還要研究HTML5、web視覺設計、網站配色、網站交互設計模式等相關技術

web前端有廣闊的發展空間,app、小程序、移動端、pc端等都網站是需要前端技術的開發支持才能夠完成,技術門檻相對較低、需求量較大,薪資待遇良好。只要是互聯網端的客戶界面,就需要前端來製作完成,前端開發的編程量不大,但是需要部分編程,入門簡單,但是要學的深入需要一個過程。

『伍』 前端開發,頁面優化,性能優化有哪些方面

常用的優化有兩部分
第一:面向內容的優化
1. 減少 HTTP 請求
2. 減少 DNS 查找
3. 避免重定向
4. 使用 Ajax 緩存
5. 延遲載入組件

6. 預先載入組件
7. 減少 DOM 元素數量
8. 切分組件到多個域

9. 最小化 iframe 的數量
10. 不要出現http 404 錯誤
第二:面向 Server
1. 縮小 Cookie
2. 針對 Web 組件使用域名無關性的

『陸』 什麼是前端和終端怎麼學前端

前端和終端的概念如下:

前端對於網站來說,通常是指,網站的前台部分包括網站的表現層和結構層。因此前端技術一般分為前端設計和前端開發,前端設計一般可以理解為網站的視覺設計,前端開發則是網站的前台代碼實現,包括基本的HTML和CSS以及JavaScript/ajax,現在最新的高級版本HTML5、CSS3,以及SVG等。

終端Terminal通常是指那些與集中式主機系統(例如IBM大型計算機)相連的「啞」用戶設備。終端從用戶接收鍵盤輸入,並且將這些輸入發送給主機系統。主機系統處理這個用戶的鍵盤輸入和命令,然後輸出返回並顯示在這個終端的屏幕上。個人計算機可以運行稱為終端模擬器的一些程序來模仿一個啞終端的工作。

學習前端一般分為以下幾個階段:

一階段:html標簽、html5新增標簽、css樣式、css3樣式、媒體查詢等;

二階段:Java、jQuery、ajax、面向對象、http傳輸協議等;

三階段:canvas、js高級應用、JS-SDK、H5新增技術;

四階段:node.js、vue.js;

前端開發相對較容易入門,但是選擇一個正確的學習路線也是很重要的,新手可以參考上面這張學習路線圖。

『柒』 前端開發,頁面優化,性能優化有哪些方面

感覺前端的性能確實是很重要的,我談談我在實際項目中的應用。前端的應用主要從以下幾個方面進行優化:

1.減少http請求

HTTP協議是無狀態的應用層協議,意味著每次HTTP請求都需要建立通信鏈路、進行數據傳輸,而在伺服器端,每個HTTP都需要啟動獨立的線程去處理。這些通信和服務的開銷都很昂貴,減少HTTP請求的數目可有效提高訪問性能。減少HTTP的主要手段是合並CSS、合並JavaScript、合並圖片。將瀏覽器一次訪問需要的JavaScript、CSS合並成一個文件,這樣瀏覽器就只需要一次請求。圖片也可以合並,多張圖片合並成一張,如果每張圖片都有不同的超鏈接,可通過CSS偏移響應滑鼠點擊操作,構造不同的URL。

2.使用瀏覽器緩存

對一個網站而言,CSS、JavaScript、Logo、圖標這些靜態資源文件更新的頻率都比較低,而這些文件又幾乎是每次HTTP請求都需要的,如果將這些文件緩存在瀏覽器中,可以極好地改善性能。通過設置HTTP頭中Cache-Control和Expires的屬性,可設定瀏覽器緩存,緩存時間可以是數天,甚至是幾個月。在某些時候,靜態資源文件變化需要及時應用到客戶端瀏覽器,這種情況,可通過改變文件名實現,即更新JavaScript文件並不是更新JavaScript文件內容,而是生成一個新的JS文件並更新HTML文件中的引用。使用瀏覽器緩存策略的網站在更新靜態資源時,應採用批量更新的方法,比如需要更新10個圖標文件,不宜把10個文件一次全部更新,而是應一個文件一個文件逐步更新,並有一定的間隔時間,以免用戶瀏覽器突然大量緩存失效,集中更新緩存,造成伺服器負載驟增、網路堵塞的情況。

3.啟用壓縮

在伺服器端對文件進行壓縮,在瀏覽器端對文件解壓縮,可有效減少通信傳輸的數據量。文本文件的壓縮效率可達80%以上,因此HTML、CSS、JavaScript文件啟用GZip壓縮可達到較好的效果宴襪。但是壓縮對伺服器和瀏覽器產生一定的壓力,在通信帶寬良好,而伺服器資源不足的情況下要權衡考慮。

4.CSS放在頁面最上面、JavaScript放在頁面最下面

瀏覽器會在下載完全部CSS之後才對整個頁面進行渲染,因此最好的做法是將CSS放在頁面最上面,讓瀏覽器盡快下載CSS。JavaScript則相反,瀏覽器在載入JavaScript後立即執行,有可能會阻塞整個頁面,造成頁面顯示緩慢,因此JavaScript最好放在頁面最下面。但如果頁面解析時就需要用到JavaScript,這時放在底閉祥坦部就不合適了。

5.減少Cookie傳輸

Cookie在每次響應請求中,如果太大勢必會影響性能,所以沒必要網cookie放的就不放,針對性的選擇放入cookie的數據。

總之,優化轎桐的方法還很多,我感觸最深的是第4項,有些js文件大引用如果放到最前面對性能損耗很大。


『捌』 Web前端新手要掌握的性能優化

今天小編要跟大家分享的文章是關於Web前端新手要掌握的性能優化知識。本文將分享一些前端性能優化的常用手段,包括減少請求次數、減小資源大小、各種緩存、預處理和長連接機制,以及代碼方面的性能優化等方面。下面來和小編一起看一看吧!

base64:尤其是在移動端,小圖標可以base64(webpack),大圖片慎用(如果載入速度過於慢的,而且很重要的圖片,可以用base64)


1、減少HTTP的請求次數和傳輸報文的大小


「CSSSprite(雪碧圖、圖片精靈)技術」


使用字體圖標(IconFont)或者SVG等矢量圖


+減少HTTP請求次數或者減少請求內容的大小


+渲染更快:因為它們是基於代碼渲染的,而對於點陣圖(png/jpg/gif)是需要先把圖片編碼在渲染


+不容易是幀變形


+也可以使用webp格式圖片,這種格式要小一些(但是需要伺服器端支持這種格式的請求處理)


「圖片懶載入(延遲載入)技術」


+第一次載入頁面的時候不去請求真實的圖片,提高第一次渲染頁面的速度,請求圖片的額外消耗盡可能不要處理


+當頁面載入完,把出現在用戶視野區域中的圖片做真實載入,沒有出現的先不載入(節約流浪,也能減少對伺服器的請求壓力)


o對於數據我們也盡可能分批載入(不要一次請求過多的數據,例如分頁技術)


音視頻文件取消預載入(preload='none'),這樣可以增加第一次渲染頁面的速度,當需要播放的時候在載入


客戶端和伺服器端的數據傳輸盡可能基於JSON格式完成,XML格式比JSON格式要大一些(還可以基於二進制編碼或者文件流格式,這種格式比文件傳輸好很多)


「把頁面的css/js等文件進行合並壓縮」


合並:爭取css和js都只導入一個(webpack可以實現並合並壓縮哦)


壓縮:基於webpack可以壓縮,對於圖片自己找工具先壓縮,可以使用伺服器的GZIP壓縮


圖片BASE64(用BASE64碼代表圖片,減少HTTP,增加瀏覽器渲染速度,所以真是項目中,尤其是移動端,如果圖片載入緩慢,BASE64一下就好了,;但是base64會導致文件中心的代碼超級惡心,不利於維護和開發,所以減渣瞎少使用);webpack中科院配置圖片


2、設置各種緩存、預處理和長連接機制


不經常更改的靜態資源做緩存處理(一般做的是304或者ETAG等協商緩存)


「建立Cache-Control和ExpiresHTTP的強緩存」


DNS緩存或者預處理(DNSPrefetch),減少DNS的查找


設置本地的離線存儲(manifest)或者把一些不經常更改的數據做本地臨時存儲(webstorage,indexdb)等


有錢就做CDN(地域分布式伺服器),或者加伺服器


「建立Connection:keep-aliveTcp長連接」


使用HTTP2版本協議(現在用的一般都是http1.1),可以多條tcp通道共存=>管道化鏈接


一個項目分為不同的域(不同的伺服器),例如:資源web伺服器、數據伺服器,圖片伺服器,視頻伺服器等,合理利用伺服器資源,但是導致過多的DNS解析


Cache-Control的優先順序高於Expires


基於本地存儲,做數據的存儲


3、代碼方面的性能優化


減少對閉包的使用(因為過多使用閉包會產生很多如蘆空不銷毀的內存,處理不好的話,會導致內存溢出「棧溢出」),減少閉包的嵌套(減少作用域鏈的查找層級)


對於動畫來說:能用css解決的不用js(能夠用transform處理的,不用傳統的css樣式,因為transform開啟硬體加速,不會引發迴流,或者使用定位的元素也會好很多,因為定位的元素脫離文檔流,不會對其他元素的位置造成影響),能用
requestAnimationFrame解決的不用定時器


+用requestAnimationFrame還有一個好處,當頁面處於休眠無訪問狀態,動畫會自己暫停,知道回復訪問才開始,而定時器是不論什麼狀態,只要頁面不管,就一直處理


避免使用iframe(因為iframe會嵌入其他頁面,嘩漏這樣父頁面渲染的時候,還要同時把子頁面也渲染了,渲染進度會變慢)


減少直接對DOM的操作(原因是減少DOM的迴流和重繪...),當代項目基本基於mvvm,mvc數據驅動視圖渲染的,對DOM的操作框架本身完成,性能要好很多


低耦合高內聚(基於封裝的方式:方法封裝,插件,組件,框架,類庫等封裝,減少頁面中的冗餘代碼,提高代碼使用率)


盡可能使用事件委託


避免出現死循環或者嵌套循環(嵌套循環會成倍增加循環的次數)


項目中盡可能使用非同步編程來模擬出多線程的效果,避免主線程阻塞(非同步操作基於Promise設計模式來管理)


JS中不要使用with


避免使用css表達式


函數的防抖和節流


減少使用eval(主要原因是防止壓縮代碼的時候,由於符號書寫不合規,導致代碼混亂)


圖片地圖:對於多次調取使用的圖片(尤其是背景圖),盡可能把它提取成為公共的樣式,而不是每一次重新設置background


減少filter濾鏡的使用


盡可能減少選擇器的層級


盡可能減少table布局


手動回收堆棧內存(賦值為null)


「棧溢出:死遞」


functionfunc(){


func();


}func();


解決方案:


functionfunc(){


setTimeout(func,0);


}func();


相互引用:引用類型之間的相互調用,形成嵌套式內存


letobj1={


name:'obj1',};


letobj2={


name:'obj2',


x:obj1}


obj1.x=obj2;


以上就是小編今天為大家分享的關於Web前端新手要掌握的性能優化知識的文章,希望本篇文章能夠對正在從事web前端工作的小夥伴們有所幫助,想要了解更多web前端知識記得關注北大青鳥web培訓官網,最後祝願小夥伴們工作順利,成為一名優秀的web前端工程師。