Web界面由DOM树来构成,当其中某一部分发生变化时,其实就是对应的某个DOM节点发生了变化.在React中,构建UI界面的思路是由当前状态决定界面.前后两个状态就对应两套界面,然后由React来比较两个界面的区别,这就需要对DOM树进行Diff算法分析. 即给定任意两棵树,找到最少的转换步骤.但是标准的的Diff算法复杂度需要O(n^3),这显然无法满足性能要求.要达到每次界面都可以整体刷新界面的目的,势必需要对算法进行优化.这看上去非常有难度,然而Facebook工程师却做到了,他们结合We…