把DOM和javascript各自想象成一個島嶼,它們之間用收費橋樑鏈接 --《高性能javascript》javascript
JS很快的,JS修改DOM也是很快的。在JS世界裏,一切是簡單的、迅速的。但DOM操做並不是JS一我的的獨舞,而是兩個模塊之間的協做。java
由於DOM是屬於渲染引擎中的東西,並且JS又是JS引擎中的東西。當咱們用JS去操做DOM時,本質上是JS引擎和渲染引擎之間進行了「跨界交流」。這個「跨界交流」的實現並不簡單,它依賴了橋接接口做爲「橋樑」(以下圖)。性能
過「橋」要收費————這個開銷自己就是不可忽略的。咱們沒操做一次DOM(無論是爲了修改仍是訪問其值),都要過一次「橋」,過「橋」的次數一多,就會產生明顯的性能問題》所以減小DOM操做的建議,並不是空穴來風