React的虚拟dom功能是否可以由浏览器本身实现

我在一个前端群讨论过这个问题,我希望是加入一个API在vdom commit之前不要触发layout,然后由开发者手动触发。但问题是很多API,比如offsetTop本来就需要layout去得到最新的数据,这就是蛋鸡的问题了。所以如果要搞一个这样的东西就需要另外搞一个东西禁止在commit周期里访问这些API。欢迎大家在评论里面继续讨论。
■网友
当然能。
但DOM性能真的有那么差吗,差到要在浏览器底层做这种优化?
不是。DOM性能对大多数哪怕复杂点的应用都根本是一个不存在的问题。
为什么?因为原来DOM性能差的手机终端,要不了多久性能就和现在PC很接近了。
费那个劲干嘛。
真正重要的是你怎么架构你的应用。

■网友
人肉处理细粒度更新是最快的,但是效率太低了,除了vscode这类,大部分情况下得不偿失vdom不可能比人肉处理快,只是为了“不慢”
■网友
【React的虚拟dom功能是否可以由浏览器本身实现】 diff也不是百分百正确啊,还需要提供某些信息,如果改了,以前的代码兼容是个问题

■网友
首先 浏览器这么干了还不是得提供api来直接操作dom其次 react也不是万能的啊 动画不好写 事件封装的也不全 最后还不是得引用真实dom元素折腾啊


    推荐阅读