什么是虚拟DOM?为什么虚拟DOM性能更优秀?

什么是虚拟DOM?

  框架中的概念,用JS对象来模拟页面上DOM和DOM之间的嵌套,本质是一个对象,而且把原生对象中的属性根据需要添加,不是全部存在,更‘轻’。

工作原理

获取内存中的(虚拟)dom树和新生成的(虚拟)dom树,通过diff算法进行对比,得到需要更新的DOM元素

这两颗(虚拟)DOM树都是框架模拟出来的,就是个对象,旧的会被保存在内存中


什么虚拟DOM性能更优秀?        

还是要更新10个DOM节点,虚拟DOM不会一次一次的去通知浏览器,而是通过diff算法去操作框架造出来的虚拟DOM树(也就是个对象),更新对象速度会很快,然后将修改后的虚拟DOM树一次性的让浏览器进行挂载更新,减少计算的浪费
    这么一比较,浏览器只是运作了一次,达到高效的更新渲染
 

你可能感兴趣的:(前端,javascript,html)