国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Bom 和 Dom 區(qū)別 ----- 真是DOM 和 虛擬Dom區(qū)別

這篇具有很好參考價值的文章主要介紹了Bom 和 Dom 區(qū)別 ----- 真是DOM 和 虛擬Dom區(qū)別。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

DOM和BOM的區(qū)別? 我們都指代,javascript由三個部分組成:

ECMAScript:描述了JS的語法和基本對象
BOM(瀏覽器對象):與瀏覽器交互的方法和對象
DOM(文檔對象模型):處理網(wǎng)頁內(nèi)容的方法和接
ps:根據(jù)宿主(瀏覽器)的不同,具體的表現(xiàn)形式也不盡相同,ie和其他瀏覽器風(fēng)格迥異;

DOM是文檔對象模型,它指的是把文檔當(dāng)作一個對象來對待,這個對象主要定義了處理網(wǎng)頁的內(nèi)容和接口

BOM 主要處理瀏覽器窗口和框架,不過通常瀏覽器特定的 JavaScript 擴展都被看做 BOM 的一部分。這些擴展包括:

彈出新的瀏覽器窗口 移動、關(guān)閉瀏覽器窗口以及調(diào)整窗口大小 提供 Web 瀏覽器詳細(xì)信息的定位對象 提供用戶屏幕分辨率詳細(xì)信息的屏幕對象 對 cookie 的支持 IE 擴展了 BOM,加入了 ActiveXObject 類,可以通過 JavaScript 實例化 ActiveX 對象

javacsript是通過訪問BOM(Browser Object Model)對象來訪問、控制、修改客戶端(瀏覽器),由于BOM的window包含了document,window對象的屬性和方法是直接可以使用而且被感知的,因此可以直接使用window對象的document屬性,通過document屬性就可以訪問、檢索、修改XHTML文檔內(nèi)容與結(jié)構(gòu)。因為document對象又是DOM(Document Object Model)模型的根節(jié)點??梢哉f,BOM包含了DOM(對象),瀏覽器提供出來給予訪問的是BOM對象,從BOM對象再訪問到DOM對象,從而js可以操作瀏覽器以及瀏覽器讀取到的文檔。其中

BOM是瀏覽器對象模型,它指的是將瀏覽器當(dāng)作一個對象來對待,這個對象主要定義了與瀏覽器進行交互的方法和接口;
BOM的核心是window,而window對象具有雙重角色,它既是js訪問瀏覽器窗口的一個接口,又是一個全局對象(Global);
這就意味著網(wǎng)頁中定義的任何對象、變量和函數(shù),都會作為全局對象的一個屬性或者方法存在;

Window對象包含屬性:document、location、navigator、screen、history、frames Document根節(jié)點包含子節(jié)點:forms、location、anchors、images、links

從window.document已然可以看出,DOM的最根本的對象是BOM的window對象的子對象。

區(qū)別:DOM描述了處理網(wǎng)頁內(nèi)容的方法和接口,BOM描述了與瀏覽器進行交互的方法和接口。

3.使用標(biāo)準(zhǔn)

1)DOM是W3C的標(biāo)準(zhǔn),所有瀏覽器公共遵守的標(biāo)準(zhǔn)
2)BOM是各個瀏覽器廠商根據(jù)DOM在各自瀏覽器上的實現(xiàn)(表現(xiàn)為不同瀏覽器定義有差別,實現(xiàn)方式不同)
3)window為BOM對象,而非js對象

4.包含屬性:

BOM: location、navigato、document
DOM:document也是BOM的window的子對象;
PS:DOM的最根本的對象是BOM的window對象的子對象


DOM?

Bom 和 Dom 區(qū)別 ----- 真是DOM 和 虛擬Dom區(qū)別,vue 問題,javascript,前端,開發(fā)語言

bom

?Bom 和 Dom 區(qū)別 ----- 真是DOM 和 虛擬Dom區(qū)別,vue 問題,javascript,前端,開發(fā)語言

真是Dom? ?和? ? ?虛擬Dom

參考:?虛擬DOM和實際的DOM有何不同?_虛擬dom和真實dom的區(qū)別-CSDN博客

虛擬DOM與真實DOM的區(qū)別(注意:需不需要虛擬DOM,其實與框架的DOM操作機制有關(guān)):


1.執(zhí)行效率:由于真實DOM的操作需要涉及瀏覽器的布局計算和渲染,執(zhí)行效率比虛擬DOM低。
2.性能優(yōu)化:虛擬DOM通過 diff 算法比較新舊DOM節(jié)點差異,最終只更新部分節(jié)點,可以減少頁面渲染的開銷,提高性能。
?3.開發(fā)效率:虛擬DOM可以通過JS對象對DOM進行操作,比直接操作真實DOM更加方便和靈活,同時也可以借助React等框架提供的組件化機制,使得開發(fā)效率更高。

什么是虛擬DOM: ?

? 虛擬DOM(Virtual Document Object Model)是指用JS對象來描述DOM節(jié)點及其屬性和內(nèi)容的層次結(jié)構(gòu),它是對真實DOM的一種抽象表示,并不是真正的DOM節(jié)點。當(dāng)頁面需要更新時,虛擬DOM首先進行比較,找出需要更新的部分,然后批量更新至真實DOM,最終只會引起頁面的局部重排和重繪,可以減少頁面渲染的開銷,提高性能。

真實DOM:

? ? 真實DOM(Document Object Model)是指瀏覽器中的渲染樹,由HTML元素、屬性、文本和事件組成,當(dāng)頁面中的元素發(fā)生變化時,瀏覽器會重新構(gòu)建渲染樹,此過程會引起頁面的重排和重繪,對性能影響較大。
?

虛擬dom(VNode),假的,不是真實的dom

真實的DOM在瀏覽器通過dom.api操作的,復(fù)雜的對象

虛擬DOM:可以通過this.$slots.default查看

真實的dom是一個對象,它的屬性非常多,在瀏覽器中做dom操作,會比較消耗性能

虛擬dom是一個對象,它的屬性相比較于真實的dom就比較少---用少量的屬性描述一個dom,無法在瀏覽器中直接顯示

為什么在vue中會用到虛擬dom? 有兩點好處:

1.虛擬dom比真實dom體積小,操作是相對來說消耗性能少,如果在頁面中刪除一個dom,會引起重繪,影響后邊元素的布局

1):虛擬Dom不會進行回流和重繪操作

2):虛擬dom進行頻繁的修改,然后一次性比較并修改真實DOM中需要改的部分,最后并在真實DOM中進行回流和重繪,減少過多DOM節(jié)點的回流和重繪

3)真實Dom頻繁的回流和重繪效率非常低

?

虛擬dom展示

真實dom展示?

Bom 和 Dom 區(qū)別 ----- 真是DOM 和 虛擬Dom區(qū)別,vue 問題,javascript,前端,開發(fā)語言文章來源地址http://www.zghlxwxcb.cn/news/detail-782371.html

到了這里,關(guān)于Bom 和 Dom 區(qū)別 ----- 真是DOM 和 虛擬Dom區(qū)別的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 面試題:React的真實DOM和虛擬DOM的區(qū)別

    真實DOM,就是文檔對象類型,在頁面上渲染的每一個節(jié)點都是一個真實DOM結(jié)構(gòu)。 虛擬DOM,就是一個描述描述DOM結(jié)構(gòu)的對象。 在創(chuàng)建虛擬DOM的目的就是為了更好將虛擬節(jié)點渲染到頁面上,虛擬DOM對象的節(jié)點與真實DOM的屬性是一一對應(yīng)的。 在React中,ReactDOM.render()函數(shù)將虛擬DO

    2024年04月09日
    瀏覽(25)
  • web前端javaScript筆記——(11)DOM

    屬性 ????????????????????????????????????此事件發(fā)生在何時 onabort 圖像的加載被中斷。 onblur???????????????????????????????????元素失去焦點。 anchange?????????????????????????????????域的內(nèi)容被改變 onclick ?當(dāng)用戶點擊某

    2024年01月19日
    瀏覽(29)
  • 什么是DOM和BOM?

    什么是DOM和BOM?

    DOM 全稱是 Document Object Model,也就是文檔對象模型。提供操作頁面元素的方法和屬性,是HTML和XML的API,DOM把整個頁面規(guī)劃成由節(jié)點層級構(gòu)成的文檔。 DOM 樹 DOM樹是Web頁面的模型,當(dāng)瀏覽器加載一個Web頁面時,它會創(chuàng)建這個頁面的模型,稱為DOM樹。 DOM樹主要由4類主要節(jié)點組成

    2024年02月07日
    瀏覽(10)
  • 前端基礎(chǔ)自學(xué)整理|HTML + JavaScript + DOM事件

    前端基礎(chǔ)自學(xué)整理|HTML + JavaScript + DOM事件

    目錄 一、HTML 1、Html標(biāo)簽 2、Html元素 3、基本的HTML標(biāo)簽 二、CSS 樣式 層疊樣式表 三、JavaScript 使用示例 四、HTML DOM? 通過可編程的對象模型,javaScript可以: window document 1、查找HTML元素 2、操作HTML元素 獲取元素的屬性 四、HTML DOM事件 ??是DOM提供的API Html是用來描述網(wǎng)頁的一

    2024年02月22日
    瀏覽(22)
  • 什么是虛擬DOM(Virtual DOM)?它在前端框架中的作用是什么?

    什么是虛擬DOM(Virtual DOM)?它在前端框架中的作用是什么?

    前端入門之旅:探索Web開發(fā)的奇妙世界 歡迎來到前端入門之旅!感興趣的可以訂閱本專欄哦!這個專欄是為那些對Web開發(fā)感興趣、剛剛踏入前端領(lǐng)域的朋友們量身打造的。無論你是完全的新手還是有一些基礎(chǔ)的開發(fā)者,這里都將為你提供一個系統(tǒng)而又親切的學(xué)習(xí)平臺。在這個

    2024年02月07日
    瀏覽(24)
  • Vue 虛擬DOM

    Vue 虛擬DOM

    在當(dāng)今Web開發(fā)領(lǐng)域中,構(gòu)建交互性強、可復(fù)用且易于維護的用戶界面是至關(guān)重要的。而Vue.js作為一款現(xiàn)代化且流行的JavaScript框架,正是為了滿足這些需求而誕生。它采用了MVVM架構(gòu)模式,并通過數(shù)據(jù)驅(qū)動和組件化的方式,使我們能夠更輕松地構(gòu)建出優(yōu)雅而高效的Web應(yīng)用程序。

    2024年02月22日
    瀏覽(23)
  • vue的虛擬DOM

    虛擬DOM就是一個JS對象,用它來描述真實DOM demo1: 多次執(zhí)行dom操作 demo2: 只執(zhí)行一次dom操作 比較運行時間:得到結(jié)論 越多的真實dom操作,越損耗性能 操作數(shù)據(jù)要大大的減少性能損耗,提高渲染效率 第一種更新DOM的方案 第二種更新DOM的方案 第三種使用虛擬DOM的方案 key是虛擬

    2024年02月09日
    瀏覽(19)
  • js_BOM&Dom&Ajax

    在ES5中沒有像Java中一樣專門的class定義類(ES6中可以用class定義類),所以在ES5中創(chuàng)建類其實和創(chuàng)建函數(shù)是一樣的語法: 一種語法代表了多重含義,在JavaScript中若想清楚的區(qū)分定義的到底是方法還是類性質(zhì)的對象,那么建議方法名稱小寫,建議類或?qū)ο竺Q首字母大寫

    2024年01月24日
    瀏覽(13)
  • vue中的虛擬dom

    DOM操作是Web開發(fā)中非常昂貴和低效的操作,尤其是在用戶界面頻繁更新的情況下。此時,在每次數(shù)據(jù)更新時重新渲染整個DOM樹會導(dǎo)致應(yīng)用程序性能下降。 為了解決這個問題,虛擬DOM被引入到前端開發(fā)中。虛擬DOM把整個DOM樹抽象成一個JS對象,這樣開發(fā)者就可以直接操作JS對象

    2024年02月09日
    瀏覽(21)
  • Vue面試之虛擬DOM

    ????最近在整理一些前端面試中經(jīng)常被問到的問題,分為vue相關(guān)、react相關(guān)、js相關(guān)、react相關(guān)等等專題,可持續(xù)關(guān)注后續(xù)內(nèi)容,會不斷進行整理~ ????虛擬 DOM 是用 JavaScript 對象來模擬實際 DOM 結(jié)構(gòu)的一種抽象表示。它描述了組件的結(jié)構(gòu)、屬性和事件等信息,但與實際的頁面

    2024年01月21日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包