## JavaScript實(shí)現(xiàn)
* * * * *
1.JavaScript是專為網(wǎng)頁(yè)交互而設(shè)計(jì)的腳本語(yǔ)言,一個(gè)完整的JavaScript實(shí)現(xiàn)應(yīng)該由下列三個(gè)不同的部分組成(JavaScript與ECMAScript之間的關(guān)系):
* **核心(ECMAScript)**,由ECMA-262定義,提供核心語(yǔ)言功能。
* **文檔對(duì)象模型(DOM)**,提供訪問和操作網(wǎng)頁(yè)內(nèi)容的方法和接口。
* **瀏覽器對(duì)象模型(BOM)**,提供與瀏覽器交互的方法和接口。
#### ECMAScript
* * * * *
2.ECMA-262是一份定義了一種名為ECMAScript的新腳本語(yǔ)言的**標(biāo)準(zhǔn)**。ECMA-262規(guī)定的內(nèi)容包括:**語(yǔ)法、類型、語(yǔ)句、關(guān)鍵字、保留字、操作符、對(duì)象**。
3.ECMAScript與Web瀏覽器沒有依賴關(guān)系。實(shí)際上,這門語(yǔ)言本身并不包含輸入和輸出定義。ECMA-262定義的只是這門語(yǔ)言的基礎(chǔ),而在此基礎(chǔ)上可以構(gòu)建更完善的腳本語(yǔ)言。我們常見的Web瀏覽器只是ECMAScript實(shí)現(xiàn)可能的宿主環(huán)境之一。其他宿主環(huán)境包括Node和Adobe Flash。
#### 文檔對(duì)象模型(DOM)
* * * * *
4.**DOM1級(jí)**由兩個(gè)模塊組成:**DOM Core**和**DOM HTML**。
其中DOM Core規(guī)定的是如何映射基于XML的文檔結(jié)構(gòu),以便簡(jiǎn)化對(duì)文檔中任意部分的訪問和操作。DOM HTML模塊則在DOM核心的基礎(chǔ)上加以擴(kuò)展,添加了針對(duì)HTML的對(duì)象和方法。
5.**DOM2級(jí)**引入了下列新模塊,也給出了眾多新類型的接口和定義。
* **DOM Views**:定義了跟蹤不同文檔(例如,應(yīng)用CSS之前和之后的文檔)視圖的接口。
* **DOM Events**:定義了事件和事件處理的接口。
* **DOM Style**:定義了基于CSS為元素應(yīng)用樣式的接口。
* **DOM Traversal and Range**(遍歷和范圍):定義了遍歷和操作文檔樹的方法.
6.**DOM3級(jí)**則進(jìn)一步擴(kuò)展了DOM,引入了以統(tǒng)一方式加載和保存文檔的方法--在**DOM Load and Save**(加載和保存模塊)中定義;新增了驗(yàn)證文檔的方法--在**DOM Validation**(驗(yàn)證模塊)中定義。
7.DOM 0級(jí)標(biāo)準(zhǔn)實(shí)際上是不存在的,所謂DOM 0級(jí)只是DOM歷史坐標(biāo)中的一個(gè)參照點(diǎn)而已。具體說來(lái),DOM 0級(jí)指的是IE 4.0和Netscape Navigator 4.0最初支持的DHTML。
#### 瀏覽器對(duì)象模型(BOM)
* * * * *
8.從根本上講,BOM只處理瀏覽器窗口和框架,但人們習(xí)慣上也把所有針對(duì)瀏覽器的JS擴(kuò)展算作BOM的一部分,它們包括:
- 彈出新瀏覽器窗口的功能
- 移動(dòng)、縮放和關(guān)閉瀏覽器窗口的功能
- 提供瀏覽器詳細(xì)信息的navigator對(duì)象
- 提供瀏覽器所加載頁(yè)面的詳細(xì)信息的location對(duì)象
- 提供用戶顯示器分辨率詳細(xì)信息的screen對(duì)象
- 對(duì)cookies的支持
- 像XMLHttpRequest和IE的ActiveXObject這樣的自定義對(duì)象。
9.對(duì)于已經(jīng)納入**HTML5**標(biāo)準(zhǔn)的**BOM**來(lái)說,盡管各瀏覽器都實(shí)現(xiàn)了某些眾所周知的共同特性,但其他特性還是會(huì)因?yàn)g覽器而異。
- 第一章 JavaScript簡(jiǎn)介
- 第二章 在HTML中使用JavaScript
- 第三章 基本概念
- 第四章 變量、作用域和內(nèi)存問題
- 第五章 引用類型
- 第六章 面向?qū)ο蟮某绦蛟O(shè)計(jì)
- 第七章 函數(shù)表達(dá)式
- 第八章 BOM
- 第九章 客戶端檢測(cè)
- 第十章 DOM
- 第十一章 DOM擴(kuò)展
- 第十二章 DOM2和DOM3
- 第十三章 事件
- 第十四章 表單腳本
- 第十六章 HTML5腳本程序
- 第十七章 錯(cuò)誤處理與調(diào)試
- 第二十章 JSON
- 第二十一章 AJAX和Comet
- 第二十二章 高級(jí)技巧
- 第二十三章 離線應(yīng)用與客戶端存儲(chǔ)
- 第二十四章 最佳實(shí)踐
- 第二十五章 新興的API
