首頁 > web前端 > Vue.js > vue和react中的diff有什麼差別

vue和react中的diff有什麼差別

WBOY
發布: 2022-03-17 16:15:48
原創
3806 人瀏覽過

區別:1、當節點元素類型相同,類別名稱不同時,vue認為是不同的元素,會刪除重新創建,而react認為是同類型節點,會進行修改操作;2、列表對比時,vue採用從兩端到中間的方式進行對比,而react則是從左到右進行對比。

vue和react中的diff有什麼差別

本文操作環境:windows10系統、Vue2.9.6版,DELL G3電腦。

vue和react中的diff有什麼區別

diff演算法:

對dom進行different比較不同的一種演算法(虛擬)

共同點:

vue和diff演算法,都是不進行跨層級比較,只做同級比較

不同點:

1.vue進行diff時,呼叫patch打補丁函數,一邊比較一邊給真實的dom打補丁,vue對比節點時,當節點元素類型相同,類名不同時,認為是不同的元素,刪除重新創建,而react認為是同類型的節點,進行修改操作

2.vue列表比較的時候,採用從兩端到中間的方式,舊集合和新集合兩端各存在兩個指針,兩兩進行比較,每次對比結束後,指針往佇列中間移動;react則是從左到右一次對比,利用元素的index和lastindex進行比較

#3.當一個集合把最後一個節點移動到最前面,react會把前面的節點依次向後移動,而Vue只會把最後一個節點放在最前面,這樣的操作來看,Vue的diff性能是高於react的

【相關推薦:《vue.js教程》】

以上是vue和react中的diff有什麼差別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
vue
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板