现在很多js框架提倡虚拟dom,为什么虚拟dom不能在浏览器层实现

现在很多的js框架为了提高运行性能,会提出一个叫virtual dom的概念,最有名的是facebook的react。研读了一下,virtual dom的原理基本是在dom操作层之上用js另外模拟dom以达到减少dom操作的目的。我觉得很受启发,但细想一下,这一层如果是在浏览器中完成岂不是更快,为什么要在js库中实现呢?有什么具体原因么?求大神解答

阅读 2.8k
评论
    4 个回答
    • 17.1k

    浏览器提供商想什么我不清楚,大致猜想大概会有这样一些考虑:

    浏览器一般提供底层的 API,virtual DOM 算是很应用层面的技术了。

    一般修改浏览器的 API 会涉及到制定和修改标准,然而制定标准很麻烦,多种 virtual DOM 并存的情况下不好统一。即便 React 的 virtual DOM 也一直在升级和调整。

    Facebook 没能控制一款浏览器,推不动。

      相似问题
      推荐文章