1.1 Javascript 簡史
講述了 Javascrip 誕生和發展的過程
1.2 Javascript 實現
一個完整的 Javascript 實現應該由三個部分組成:
- 核心 -
ECMAScript
- 文檔對象模型 -
DOM
- 瀏覽器對象模型 -
BOM
1.2.1 ECMAScript
ECMA 是 Javascript 的語言規范,瀏覽器、Node、Flash 都是 Javascript 的運行環境,ECMA 包含以下部分:
- 語法
- 類型
- 語句
- 關鍵字
- 保留字
- 操作符
- 對象
1.2.2 文檔對象模型(DOM)
DOM 將整個頁面映射成一個多層節點結構,通過編程接口,可以添加刪除、替換和修改任何節點
<img src="http://upload-images.jianshu.io/upload_images/1342891-c3db91294116f43c.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240" width="30" height="30"/>
1. 為什么使用 DOM
制定統一的文檔對象模型規范,確保技術兼容。
2. DOM 級別
DOM 分為三個級別
DOM 1 級包括
- DOM 核心,規定如何映射文檔結構
- DOM HTML ,添加了針對 HTML 的對象和方法
DOM 2 級包括
- DOM 視圖:定義了文檔視圖的相關接口
- DOM 事件:定義了用戶界面和鼠標事件處理的接口
- DOM 樣式:定義了處理 CSS 對象的接口
- DOM 遍歷和范圍:定義了遍歷和操作文檔樹的接口
DOM 3 級包括
- DOM 加載和保存文檔的方法
- DOM 驗證
3. 其他 DOM 標準
- SVG 可伸縮矢量圖
- MathML 數學標記語言
- SMIL 多媒體集成語言
4. Web 瀏覽器對 DOM 的支持
該內容已經過時
1.2.3 瀏覽器對象模型 BOM
通過 BOM 可以訪問和操作瀏覽器窗口等頁面以外的部分,他是 Javascript 的一部分,但是沒有標準,直到 HTML5 才列入規范。包括:
- 彈出新瀏覽器窗口
- 移動、縮放和關閉瀏覽器窗口
- 提供瀏覽器詳細信息的
navigator
對象 - 提供頁面加載信息的
location
對象 - 提供顯示信息的 screen 對象
- 對
cookies
的支持 - 其他自定義對象如
XMLHttpRequest、ActiveXObject
1.3 Javascript 版本
版本很混亂,沒有什么規律性