网上都说操作真实DOM慢,但测试结果却比React 更快,为什么?

发布于 2021-12-03 23:31:12 字数 210 浏览 918 评论 4

网上都说操作真实dom怎么怎么慢,但是下面这个链接案例中原生的方式却是最快的

http://chrisharrington.github.io/demos/performance/

我在本地也写了个例子循环2000个随机数组,点击按钮重新生成随机数组渲染页面,也是自己用的js 操作dom 比用react 和angular 都要快,这个是怎么回事。测试方式不对,还是哪里问题,请帮忙解答下,谢谢。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

囚你心 2021-12-08 05:09:33

首先感谢你提供的benchmark,非常直观,很棒!

你的结论是原生操作真实DOM不比react慢,甚至快很多。

 

这在某些情况是对的,就比如你的这种情况, react将你从dom操作中解脱出来,不需要你手动操作dom。 这在某些方面来说可以避免”无效“的渲染, 而你如果全部都手动操作,并且没有任何”无效“更新操作,那么你一定比react快!毫无疑问,但是随着应用的复杂度上升,你很难保证这种”无效操作“不发生,而且你需要不断的保持数据和dom一致性。  

 

    希望我的回答对你有帮助。 我的个人主页是https://azl397985856.github.io/ , 掘金主页 https://juejin.im/user/58af98305c497d0067780b3b

灵芸 2021-12-08 00:07:58

bang

睫毛上残留的泪 2021-12-05 12:22:02

react、angular最终操作的还是DOM,而且中间还有有一层额外的操作,当然会比真实的操作要慢。

我们说它快是因为:react减少了真实的DOM操作,用虚拟DOM操作代替,然后对比虚拟和真实DOM,不一致的地方才真实地操作DOM,用这样的方式来减少DOM操作。

所以我们说React很快。

背叛残局 2021-12-04 13:21:51

不是说react操作的是虚拟dom.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文