BOM 請給javascript一個說法-------Day33

來源:互聯網
上載者:User

樓市低迷,業主是不是該要個說法;黃金暴跌,誰來給大媽們一個說法;中國足球,敢不敢給大家一個說法。

給個說法,誰給,給誰,這該是哲學的範疇了吧。

但是,在這裡,BOM是真真切切的給javascript一個說法,這究竟是怎麼個意思呢,我們慢慢來看。


我們先來回顧下完整javascript的結構組成:ECMAjavascript + DOM + BOM。

ECMAjavascript我們記得很清楚,這是核心,變數裡存不同類型的值,運算子對比值,運算子改變值,語句描述運算,語句合成函數方法,就好像一個實體裝置的說明書,明明白白告訴了你,它需要怎樣的操作;DOM就像是耐不住寂寞的孩子,拿到說明書就開始操作,這裡打一巴掌,那裡踢一腳,偶爾還拆幾個模組,結果裝置這裡掉個螺絲,那裡少塊漆,變的破舊不堪;而BOM呢,它是什麼,它就是你最初做這個裝置的初衷,你能看到的是它的功能,可能它不再美觀,可能有些古老,但是,DOM無論你給我把夢想拆的多碎,我總能用BOM總能看到它的熠熠生輝。

BOM,browser object model的縮寫,簡稱瀏覽器物件模型,又是個可愛到讓人淩亂的答案,可恨的是它仍然是對的。

BOM不像DOM那麼細膩,它沒法整合整個文檔的內容,但是它狂放,它要將它整個的實現,它進行的是瀏覽器和內容之間的互動,讓你最直觀的看到javascript的魅力,甚至javascript直接以BOM模型為入口來改變瀏覽器。可惜這個世界終究是多彩的,個體的差異永遠無法忽略,狼有狼窩,鼠有鼠洞,它沒有標準,只看你就竟讓誰來做,當然這裡也就出現了相容問題,這是後話,暫且不談。


其實最難的便是理解BOM的概念,上面這一大片非專業的文字是我的理解,雖然舉例略有偏頗,但感覺意思應該是對的。


接下來,我們只簡單介紹BOM的一些知識,先讓我們看幅結構圖


如果說DOM的操作是跟滑鼠、鍵盤和頁面本身內容相關聯的話,BOM則強勢的要多了些,history和location是視窗,screen和navigator是螢幕資訊,緩衝檔案cookie也在這裡,scroll捲軸它其實也可以操作的,還有架構frames,甚至還有那些彈出框,這些每一個都可以夠寫多篇介紹的,就不在這裡多說了,如果還不夠明了的話,來看看下面這幅:


其實,BOM的存在,本身是不是就是給javascript最好的說法呢,果然存在即是合理的啊,這是我當前的理解,經年過後,不知道我會怎麼看這時的我,至少我現在很開心,我這樣把它理解了,睡了,有些倦。


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.