一、在控制檯中支援 let 和 class 重新宣告
控制檯現在支援 let
和 class
語句的重新宣告,當我們在使用控制檯除錯 JavaScript 程式碼程式碼段時,對於已通過 let
或 class
宣告的,無法再次宣告是一個普遍的煩惱。
在控制檯外部或單個控制檯輸入的指令碼中,重新宣告 let 或 class 語句仍然會導致 SyntaxError 。
例如,當 x
已被 let
宣告,當再次使用 let
宣告這個區域性變數時,控制檯將丟擲一個錯誤:
![多圖預警,種草 DevTools 新特性( Chrome 80 )](https://i.iter01.com/images/0d430971f8ce0baeb3c1f8f0d19ed7a46f434239579dcbbc41117afd3d15c748.png)
現在,控制檯允許重新宣告:
![多圖預警,種草 DevTools 新特性( Chrome 80 )](https://i.iter01.com/images/e01e5e453bd6aee62a9a453ed2464da5ab8cd0372be2919df934fdbc15c7a500.png)
二、改進WebAssembly除錯
DevTools 已經開始支援 DWARF 除錯標準,這意味著在 DevTools 中增加了對程式碼步進、設定斷點和解析源語言中的堆疊跟蹤的支援。在 Chrome DevTools 中檢視改進的 WebAssembly 除錯的完整事件。
![多圖預警,種草 DevTools 新特性( Chrome 80 )](https://i.iter01.com/images/189c673470c71be39867ab694473a4dc23bd62ff28559b1fc13c3c6caecfea41.png)
三、Network 更新
1. 在啟動程式選項卡中請求啟動程式鏈
現在,你可以將網路請求的啟動器和依賴項作為巢狀列表檢視,這可以幫助你理解為什麼要請求某個資源,或者某個資源(例如指令碼)導致了什麼網路活動。
![多圖預警,種草 DevTools 新特性( Chrome 80 )](https://i.iter01.com/images/8075eb983c8ac5084737482ff33929ab40f308e5f06b19e8af0cf8bd398c2489.png)
在網路皮膚中記錄網路活動之後,單擊資源,然後轉到Initiator選項卡檢視其請求引發程式鏈:
- 檢查的資源是粗體。在上面的截圖中,web.dev/default-627… 是被檢查的資源;
- 被檢查資源之上的資源是發起者。在上面的截圖中,web.dev/bootstrap.j… 是 web.dev/default-627… 的發起人,換句話說,是 web.dev/bootstrap.j… 引起了 web.dev/default-627… 的網路請求;
- 被檢查資源下面的資源是依賴關係。在上面的截圖中,web.dev/chunk-f34f9… 是 web.dev/default-627… 的屬地換句話說,是 web.dev/default-627… 引起了 web.dev/chunk-f34f9… 的網路請求;
還可以通過按住Shift並將滑鼠懸停在網路資源上來訪問啟動程式和依賴項資訊。
2. 在 Overview 中突出顯示選中的網路請求
在單擊網路資源以便對其進行檢查之後,Network 皮膚現在在 Overview 中在該資源周圍放置了一個藍色框。 這可以幫助你檢測網路請求是否比預期的發生得早或更晚。
![多圖預警,種草 DevTools 新特性( Chrome 80 )](https://i.iter01.com/images/dcd1cf73b4a60b937ea76fe45396cbe6341873905b13d394674c602bdcad1c27.png)
3. Network 皮膚中顯示 Url 列 和 Path 列
使用 Network 皮膚中新的 Path 列和 Url 列檢視每個網路資源的絕對路徑或完整URL。
![多圖預警,種草 DevTools 新特性( Chrome 80 )](https://i.iter01.com/images/b1ec4145329cde75a5d2333abd122a166eeb8a156ba8ec6509b1e1c72ef0e213.png)
4. 更新了 User-Agent 字串
DevTools支援通過Network Conditions 選項卡設定自定義 User-Agent 字串,User-Agent 字串會影響連線到網路資源的 User-Agent
HTTP 標頭以及 navigator.userAgent
的值。
預定義的 User-Agent 字串已更新,以反映現代瀏覽器版本。
![多圖預警,種草 DevTools 新特性( Chrome 80 )](https://i.iter01.com/images/3180997c77e7f2c085a6ad2d45036f2f29d159870d749d84ace27bde13607c05.png)
你還可以在 Device 模式下設定 User-Agent 字串。
四、Audits 更新
新的配置介面
配置 UI 採用了新的響應式設計,並且節流配置選項也得到了簡化。檢視 Audits Panel Throttling 瞭解更多變更資訊。
![多圖預警,種草 DevTools 新特性( Chrome 80 )](https://i.iter01.com/images/d89e513c13e33d627e478b4b6e5bb186ac1f405a0cdd6037f38be1d3f18544d8.png)
五、覆蓋標籤更新
1. 按功能或按塊覆蓋模式
Coverage 選項卡有一個新的下拉選單,允許你指定應該為每個函式還是每個塊收集程式碼覆蓋率資料。每個塊的覆蓋範圍更詳細,但收集起來也更昂貴。DevTools現在預設使用每個函式覆蓋。
在HTML檔案中,你可能會看到較大的程式碼覆蓋率差異,具體取決於你是按功能使用還是按塊模式使用。 使用按功能模式時,HTML檔案中的內聯指令碼被視為功能。 如果指令碼完全執行,則DevTools會將整個指令碼標記為已使用的程式碼。 只有指令碼完全不執行時,DevTools才會將該指令碼標記為未使用的程式碼。
![多圖預警,種草 DevTools 新特性( Chrome 80 )](https://i.iter01.com/images/1d3e94fc7fcc68c4263ff8b4ed07e5fbb0478cb6966f9d2260215dd99ecd550f.png)
2. 必須通過頁面重新載入來啟動覆蓋率
由於覆蓋率資料不可靠,在不過載頁面的情況下切換程式碼覆蓋率已經被移除。例如,如果一個函式的執行時間很長,並且V8的垃圾收集器已經清理了它,那麼這個函式可以被報告為未使用。
六、往期精彩系列
是時候拋棄Postman了,試試 VS Code 自帶神器外掛???
想看往期更過系列文章,點選前往 github 部落格主頁
本文翻譯自What's New In DevTools (Chrome 80)
如果覺得不錯,就點個贊吧!???
六、走在最後
-
❤️玩得開心,不斷學習,並始終保持編碼。??
-
如有任何問題或更獨特的見解,歡迎評論或直接聯絡瓶子君(掃碼關注公眾號回覆 123 即可)!??
-
?歡迎關注:前端瓶子君,每日更新!?
![多圖預警,種草 DevTools 新特性( Chrome 80 )](https://i.iter01.com/images/7d2a02b55ba841d47943c405b2d8186cf529ba344cd34d2b00be56bf41da80df.png)