ECMAScript
Netscape(網(wǎng)景)公司推出JavaScript不久,不甘落后的微軟也推出了微軟版的JavaScript-JScript,微軟主要將其用于自己的瀏覽器Internet Explorer。最初兩家公司各自為政,分別執(zhí)行自己的標準。那個時候的web程序員是很痛苦的,通常需要將相同的功能編寫兩份不同語法的程序。
1999年,歐洲計算機協(xié)會(ECMA)依據(jù)JavaScript制定了ECMAScript的ECMA-262規(guī)范,ECMAScript成為JavaScript的標準。之后兩家公司都遵循了該規(guī)范,所以JavaScript和Jscript大部分是相同的,但也有小部分不同之處。
DOM
Document Object Model(文檔對象模型),在JavaScript當中,把html文檔當做一棵樹,這棵樹有一個根節(jié)點<html></html>,根節(jié)點下有很多子節(jié)點,每一個節(jié)點都可以看做是一個DOM對象,JavaScript通過操作DOM對象完成重構(gòu)整個HTML文檔、添加、移除、改變或重排頁面上的項目。從而達到網(wǎng)頁動態(tài)效果,提高與用戶的交互度。
JavaScript對DOM元素的操作又可以稱為“html dom編程”。HTML DOM是HTML Document Object Model(文檔對象模型)的縮寫,HTML DOM則是專門適用于HTML/XHTML的文檔對象模型。熟悉軟件開發(fā)的人員可以將HTML DOM理解為網(wǎng)頁的API。它將網(wǎng)頁中的各個元素都看作一個個對象,從而使網(wǎng)頁中的元素也可以被計算機語言獲取或者編輯。 例如Javascript就可以利用HTML DOM動態(tài)地修改網(wǎng)頁。
根據(jù)W3C DOM規(guī)范,DOM是一種與瀏覽器,平臺,語言無關(guān)的接口,使得你可以訪問頁面其他的標準組件。簡單理解,DOM解決了Netscape的JavaScript和 Microsoft的JavaScript之間的沖突,給予web設(shè)計師和開發(fā)者一個標準的方法,讓他們來訪問他們站點中的數(shù)據(jù)、腳本和表現(xiàn)層對象。
Browser Object Model(瀏覽器對象模型),使JavaScript能夠與瀏覽器進行“對話”,獲取瀏覽器信息,操作瀏覽器。雖然W3C并沒有對BOM作出規(guī)范,但是所有瀏覽器都支持BOM,有一些事實上的標準。