相信前端開發人員對DOM、BOM物件都已經十分了解了,這些兩個物件不僅是入門概念,也是日常開發中接觸最多的概念;同時作為前端開發的必備知識之一的Javascript,由於其具有高度的彈性,許多同學都是秉持遇到什麼學什麼的理念,一點點不斷來完善自己的知識,這也是個人提高技術的必經途徑之一;不過個人還是比較傾向於整體把握為指導,日常累積為手段的方式進行提升。
總之適合自己的方法,才是最好的方法。以下切入正題:
全域物件:在宿主環境中,其本身及其所有屬性都可以在程式的任何地方、任何時間存取的物件;如果全域物件有切僅有一個,全域物件同時也是根節點物件;
根節點物件:所有屬性、方法都掛載在根節點物件下,以便於開發者進行屬性、方法的查找;其缺點是呼叫繁瑣;
全域物件:不同屬性、方法都掛載在多個節點物件下,優點是呼叫方便快速;缺點也是被Java語言所詬病的無序,使用時不知從何查找;
DOM、BOM物件現在的明星NodeJS都有一個唯一的全域對象,所有其他屬性、方法都從屬於該節點物件、或其子節點物件;如DOM的html
、BOM的window
、NodeJS的global
;
Javascript為了開發者使用的方便,將許多方法、屬性都設定為全域物件/屬性,所以Javascript就沒有所謂的唯一的根節點物件;
Javascript的全域物件根據是否依賴宿主環境分為兩類:
- 核心物件:即ECMAScript Global Object,這些物件在程式執行前已經存在了(預設實例化);
- 宿主環境下的物件:宿主環境提供的全域物件/函數,常見的是瀏覽器設定並且限制開發者重寫的,如:setTimeout、location等,
以上是Javascript中有關物件的概述的詳細內容。更多資訊請關注PHP中文網其他相關文章!