JavaScript 是一種解釋型的指令碼語言,被大量地應用於網頁中,用以實現網頁和瀏覽者的動態互動。目前幾乎所有的瀏覽器都可以很好地支援 JavaScript。由於 JavaScript 可以及時響應瀏覽者的操作,控制頁面的行為表現,提高使用者體驗,因而已經成為前端開發人員必須掌握的語言之一。
JavaScript 是為滿足製作動態網頁的需要而誕生的一種程式語言,是由 Netscape(網景通訊公司)開發的嵌入到 HTML 檔案中的基於物件(Object)和事件驅動(Event Driven)的指令碼語言。在 HTML 基礎上,使用 JavaScript 可以開發互動式(網頁)Web。JavaScript 的出現使得網頁和使用者之間實現了實時、動態和互動的關係。
JavaScript發展歷史
JavaScript 最初由 Netscape 的 Brendan Eich 開發,開發的目的是為了擴充套件即將於 1995 年發行的 NetscapeNavigator2.0(NN2.0)功能,提高網頁的響應速度。最初 JavaScript 叫作 LiveScript,後來因為 Netscape和Sun 公司合作,且 Java 正處於強勁的發展勢頭中,出於市場行銷的目的,Netscape 和 Sun 公司協商後,將 LiveScript 改為 JavaScript。
當時的 Microsoft(微軟)為了取得技術上的優勢,在 IE3.0 上發布了 VBScript,並將其命名為 JScript,以此來應對 JavaScript。之後,為了爭奪市場份額,Netscape 和 Microsoft 這兩大瀏覽器廠商不斷在各自的瀏覽器中新增新的特性和各種版本的 JavaScript 實現。
由於他們在實現各自的 JavaScript 時並沒有遵守共同的標準,這就使得他們的瀏覽器對 JavaScript 的相容性問題越來越大,從而給 JavaScript 開發人員帶來巨大的痛苦。為了達到使用上的一致性,減輕 JavaScript 開發人員的痛苦,1997 年,在 ECMA(歐洲計算機製造商協會)的協調下,由 Netscape、Sun、微軟、Borland 組成的工作組對 JavaScript 和 JScript 等當時存在的主要的指令碼語言確定了統一標準:ECMA-262。
該標準定義了一個名為 ECMAScript 的指令碼語言,規定了 JavaScript 的基礎內容,其中主要包括:語法、型別、語句、關鍵字、保留字、操作符和物件這幾方面的內容。
從內容上看,ECMAScript 規定了指令碼語言的規範,而 JavaScript、JScript 等指令碼語言則是依照這個規範來實現的,和 ECMAScript 相容,但包含了超出 ECMAScript 的功能。因為 ECMA-262 標準的出台,所以現在 JavaScript、JScript 和 ECMAScript 都通稱為 JavaScript(在後面的內容中,我們將會更多使用其簡寫“JS”來表示 JavaScript)。
瀏覽器的相容性也越來越高:在2008 年,五大主流 Web 瀏覽器(IE、Firefox、Safari、Chrome 和 Opera)就全部做到了與 ECMA-262 相容;隨著各大瀏覽器廠商的不斷努力,特別是 HTML5 規範的發布,各大瀏覽器對 JavaScript 的相容性也得到了不斷的提高。依照這樣的發展趨勢,我們完全可以相信,不久的將來,各大瀏覽器必將實現對 JavaScript 的完全相容。
JavaScript的組成部分
標準化後的 JavaScript 包含了 3 個組成部分,如圖 1 所示。
圖 1:JavaScript 組成部分