BOM 請給javascript一個說法-------Day33
樓市低迷,業主是不是該要個說法。黃金暴跌,誰來給大媽們一個說法。中國足球,敢不敢給大家一個說法。
給個說法,誰給,給誰,這該是哲學的範疇了吧。
可是,在這裏。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最好的說法呢,果然存在即是合理的啊,這是我當前的理解,經年過後,不知道我會怎麽看這時的我,至少我如今非常開心,我這樣把它理解了,睡了。有些倦。
BOM 請給javascript一個說法-------Day33