JavaScript簡史
JavaScript由Netscape(網景)公司在1995年發布,最開始的主要目的是處理以前由服務器端語言負責的一些輸入驗證操作,以便提高用戶體驗,后來就慢慢的發展為一門強大的編程語言。作者建議:要想全面理解和掌握JavaScript,關鍵在於弄清楚它的本質、歷史和局限性。
JavaScript實現
一個完整的JavaScript實現=核心(ECMAScript)+文檔對象模型(DOM)+瀏覽器對象模型(BOM)。
1、ECMAScript:由ECMA-262定義的ECMAScript與Web瀏覽器沒有依賴關系。實際上,這門語言本身並包含輸入和輸出定義,ECMA-262定義的只是這門語言的基礎,而在此基礎之上可以構建更完善的腳本語言。它是是宿主環境中腳本語言的國際 Web 標准。擴展:ECMAScript是一種由歐洲計算機制造商協會(ECMA)通過ECMA-262標准化的腳本程序設計語言。這種語言在萬維網上應用廣泛,它往往被稱為JavaScript或JScript,但實際上后兩者是ECMA-262標准的擴展。 ECMAScript和JavaScript的關系是,前者是后者的規格,后者是前者的一種實現。
2、文檔對象模型(document object model):是針對XML但經過擴展用於HMTL的應用程序編程接口。DOM把整個頁面映射為一個多層節點結構。HTML或XML頁面中的每個組成部分都是某種類型的節點,這些節點又包含着不同類型的數據。使用了DOM開發人員首次無需重新加載網頁,就可以修改其外觀和內容。其中文檔對象模型一共分為三個級別:
DOM1級由兩個模塊組成,DOM核心和DOM HTML,核心規定的是如何映射基於XML的文檔結構,以便簡化對文檔中任意部分的訪問和操作,DOM HTML模塊則在DOM核心的基礎上加以擴展,添加了針對HTML的對象和方法。
DOM2級在原來DOM的基礎上又擴充了鼠標和用戶界面事件、范圍、遍歷(迭代DOM文檔的方法)等細分模塊,而且通過對象接口增加了對CSS的支持,DOM2級引入了新模塊,也給出了眾多新類型和新接口的定義。
DOM3級則進一步擴展了DOM,引入了以統一方式加載和保存文檔的方法,新增了驗證文檔的方法,也對DOM核心進行了擴展。
3、瀏覽器對象模型( Browser Object Model ): 提供了獨立於內容的、可以與瀏覽器窗口進行互動的對象結構。BOM由多個對象組成,其中代表瀏覽器窗口的Window對象是BOM的頂層對象,其他對象都是該對象的子對象。瀏覽器對象模型 (BOM) 使 JavaScript 有能力與瀏覽器“對話”。
本章小節
JavaScript是一種專為與網頁交互而設計的腳本語言,由三部分組成,分別是:ECMAScrpt(ECMA-262定義,提供核心語言功能);文檔對象模型(提供訪問和操作網頁內容的方法和接口);瀏覽器對象模型(提供與瀏覽器交互的方法和接口)。
JavaScript簡史