虛擬DOM與真實DOM的區別


  1. 虛擬DOM不會進行排版與重繪操作    虛擬DOM就是把真實DOM轉換為Javascript代碼
  2. 虛擬DOM進行頻繁修改,然后一次性比較並修改真實DOM中需要改的部分(注意!),最后並在真實DOM中進行排版與重繪,減少過多DOM節點排版與重繪損耗
  3. 真實DOM頻繁排版與重繪的效率是相當低的
  4. 虛擬DOM有效降低大面積(真實DOM節點)的重繪與排版,因為最終與真實DOM比較差異,可以只渲染局部(同2)
  5. 使用虛擬DOM的損耗計算:
    總損耗 = 虛擬DOM增刪改 + (與Diff算法效率有關)真實DOM差異增刪改 + (較少的節點)排版與重繪
  6. 直接使用真實DOM的損耗計算:
    總損耗 = 真實DOM完全增刪改 + (可能較多的節點)排版與重繪 
    總之,一切為了減弱頻繁的大面積重繪引發的性能問題,不同框架不一定需要虛擬DOM,關鍵看框架是否頻繁會引發大面積的DOM操作

     


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM