簡體   English   中英

記錄每一頁是否都是好習慣?

[英]Is it good practice to document.body every page?

我假設減少減少document.querySelector,document.getElementById等的數量是一種好習慣(對此,什么是合適的術語?)。 但是,我網站的每個頁面上都有許多不同的腳本運行。 這就是為什么我想在每一頁上“ const body = document.body”。 這是個好主意嗎?

萬一我的意思還不清楚,我相信下面的例子會有所幫助:

HTML:

 <body> <header></header> <nav></nav> <main></main> <footer></footer> </body> 

練習A

 const header = document.querySelector('header'); const nav = document.querySelector('nav'); const main = document.querySelector('main'); const footer = document.querySelector('footer'); 

練習B

 const body = document.body; const header = body.querySelector('header'); const nav = body.querySelector('nav'); const main = body.querySelector('main'); const footer = body.querySelector('footer'); 

謝謝你的協助。

差異確實很小,我認為這不值得麻煩,但是實踐B在我的瀏覽器中的速度實在有點慢 (《 勇敢傳說》 0.66.61 Chromium:74.0.3729.131(正式版本)開發人員(64位)) 。

這兩個測試(每個測試有4個查詢)的運行時間約為.000008秒(每秒120,000次),因此,除非您執行數十萬次,否則不會有任何區別。

jsperf測試

通常,您總是可以假設進入DOM樹的深度越小,JS要做的工作就越少。 因此,如果將DOM節點存儲在變量中,然后從該節點訪問其子節點,則它總是比從根節點執行它更快。 但是,由於body只是第一級節點,因此除非您執行數十萬次DOM查詢並進行第二次更新,否則我認為不會顯着提高性能。

希望有幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM