ECMAScript、DOM 和 BOM
JavaScript的實現
JavaScript 的核心 ECMAScript 描述了該語言的語法和基本對象;DOM 描述了處理網頁內容的方法和接口;BOM 描述了與瀏覽器進行交互的方法和接口。
組成部分
- 核心(ECMAScript):描述了改語言的語法和基本對象;
- 文檔對象模型(DOM):描述了處理網頁內容的方法和接口;
- 瀏覽器對象模型(BOM):描述了與瀏覽器進行交互的方法和接口
ECMAScript
Web瀏覽器對於ECMAScript來說是一個宿主環境,但不是唯一的宿主環境。
ECMAScript描述了一下內容:
- 語法
- 類型
- 語句
- 關鍵字
- 保留字
- 運算符
- 對象
ECMAScript僅僅是一個描述,定義了腳本語言的所有屬性、方法和對象。其他語言可以以ECMAScript爲基準,例如JavaScript:
DOM
DOM(文檔對象模型)是HTML和XML的應用程序接口。DOM將把真個頁面規劃成有節點層級構成的文檔。HTML或XML頁面的每個部分都是一個節點的衍生物。例如:
DOM的幾種模塊:
- DOM視圖:描述跟蹤文檔的各種視圖(即css樣式化之前和css樣式化之後的文檔)
- DOM事件:描述事件的接口
- DOM樣式:描述處理基於css樣式的接口
- DOM遍歷和範圍:描述遍歷和操作文檔樹的接口
BOM
BOM(瀏覽器對象模型),主要處理瀏覽器窗口和框架,通常瀏覽器特定的js擴展都被看做BOM的一部分,包括:
-
彈出新的瀏覽器窗口
-
移動、關閉瀏覽器窗口以及調整窗口大小
-
提供web瀏覽器詳細信息的定位對象
-
提供用戶屏幕分辨率詳細信息的屏幕對象
-
對cookie的支持
-
IE擴展了BOM,加入了ActiveXObject類,可以通過js實例化ActiveX對象
每種瀏覽器都可以爲這些對象或者其他對象定義自己的屬性和方法