1.Virtual DOM是一個基本的JavaScript對象,也是整個Virtual DOM樹的基本。
2.JavaScript很快和直接操作DOM很慢,這是Virtual DOM得以實(shí)現(xiàn)的兩個基本前提咏花。得益于V8引擎的出現(xiàn),讓JavaScript可以高效地運(yùn)行,在性能上有了極大的提高。直接操作DOM的低效和JavaScript的高效相對比康铭,為Virtual DOM的產(chǎn)生提供了大前提。所以虛擬DOM就是為了解決瀏覽器性能問題而被設(shè)計(jì)出來的赌髓。
3.Virtual DOM的三個重要步驟
-生成Virtual DOM樹
-對比兩棵樹的差異
-更新視圖
4.Virtual DOM優(yōu)勢
在大量、頻繁的數(shù)據(jù)更新下催跪,能夠?qū)σ晥D進(jìn)行合理锁蠕、高效的更新,而真實(shí)DOM遠(yuǎn)遠(yuǎn)無法相比的懊蒸,且實(shí)現(xiàn)了對DOM的集中化操作荣倾,在數(shù)據(jù)改變時先對Virtual DOM進(jìn)行修改,再反映到真實(shí)的DOM中骑丸,用最小的代價來更新DOM舌仍,提高效率
打開了函數(shù)式UI編程的大門
可以渲染到DOM以外的端,比如ReactNative
Virtual DOM的存在的意義通危?Virtual DOM的真正意義是為了實(shí)現(xiàn)跨平臺铸豁,服務(wù)端渲染,以及提供一個性能還算不錯 Dom 更新策略菊碟。Virtual DOM讓整個 mvvm 框架靈活了起來节芥。