vue和react的diff算法,都是忽略跨級比較,只做同級比較。vue diff時調動patch函數,參數是vnode和oldVnode,分別代表新舊節點。
1. vue比對節點,當節點元素類型相同,但是className不同,認為是不同類型元素,刪除重建,而react會認為是同類型節點,只是修改節點屬性
2. vue的列表比對,采用從兩端到中間的比對方式,而react則采用從左到右依次比對的方式。當一個集合,只是把最后一個節點移動到了第一個,react會把前面的節點依次移動,而vue只會把最后一個節點移動到第一個。總體上,vue的對比方式更高效。