1. 算法由来 React调用render()方法后,会生成一个React元素组成的树. 再次调用,生成一个新的树.React比较两者的差异,然后更新UI. 如果单纯使用算法,来查找两个DOM树的差异值,算法复杂度为O(n^3). 为了提高渲染效率,假定: 1)元素类型不同,是不同的树 2)子元素可以通过key值来判断是否稳定 这样算法复杂度降低到O(n) 2. 算法比较步骤 1. 比较根节点 如果类型不同,卸载整个DOM节点,重新加载: 如果类型相同 1)如果是普通的html标签类型,比较属性…