为什么 React 16 版本中 render 阶段放弃了使用递归

因为递归是不能被中止的,需要一直占用线程,而 JS 又是属于 单线程, 所以 当我们需要执行操作时,是不能被中断的,一旦执行,则需要全部操作执行完成后,才可释放线程
在这种情况下,我们在第一次渲染的时候,程序需要将 生成 Dom 和 包含事件 全部准备齐全后,才会添加 元素到 页面,并展示到浏览器,而用户看到的是,一直在等待中,才可看到画面,会导致用户体验极差。
原文地址:https://www.cnblogs.com/gqx-html/p/14832673.html