首先先來個源自 CharGPT 的數據:
在先前的文章有提到關於搜尋引擎的排名其中一項就是準化率,也就是用戶點擊進來後會不會馬上離開,其中還有另外一項為讀取速度。
隨著移動裝置的普及,Google 的搜尋排名開始優先考慮移動裝置,當你的讀取速度過慢時 Google 會認為你的網站影響了使用者的體驗,因此降低你的排名。
在說完了為何需要優化後,我們來針對幾個有可能遇到的痛點來分析吧
剛剛上方有提到 html 的讀取順序是從上到下,一個讀完後才會讀取下一個,但 Script 的標籤可以透過添加不同屬性來改變讀取時機
<script src='...' defer>
,此屬性會在 html 完整解析完後才開始讀取,當有多個 defer 時會按照出現順序來讀取<script src='...' async>
,此屬性為異步渲染,當 html 解析到他時會先把他丟到旁邊,等到檔案被接到時才參與讀取,與 JavaScript 的 Event Loop 不同,當檔案被接到時會立刻中斷目前的解析。