但測試結果卻比React更快?
React 官方從未說過比真實DOM快,實際上react也需要使用原生的DOM操作——innerHTML。
React的渲染快,指的是批量操作DOM的時候,比如一次性操作多個p節點,或者操作某個節點下的子節點,這時候React就快些。
React原理中的 diff算法:
react在重新渲染時,會根據diff算法計算新DOM和就DOM直接的不同,只更新這部分,而不動其他的DOM,而此時用的原生DOM操作是更新所有的DOM。
打個比方:如果你要重新渲染一個ul下的li,用react渲染,react只更新變化的li節點,沒變化的不會動,而原生操作,js一般都是重新生成所有的li,如果你自己比較,只更新其中變化的li,那么就比react快。
【恰巧最近在更新react全家桶文章,歡迎關注,大家一起學習進步】