JavaScript的前生今世

JavaScript的歷史就是一部關於屌絲逆襲的小說。

第一章 屌絲借勢登上歷史舞臺——炙手可熱

20世紀90年代,Web日益流行的同時,人們對客戶端腳本語言的需求也越來越強烈。那個時候,絕大多數因特網用戶都使用速度僅爲28.8kbit/s的“貓”(調制解調器)上網,但網頁的大小和複雜性卻不斷增加。爲完成簡單的表單驗證而頻繁地與服務器交換數據只會加重用戶的負擔。想象一下:用戶填寫完一個表單,單擊“提交”按鈕,然後等待30秒鐘,最終服務器返回消息說有一個必填字段沒有填好……當時走在技術革新最前沿的Netscape公司,決定着手開發一種客戶端語言,用來處理這種簡單的驗證。

當時就職於Netscape公司的布蘭登•艾奇(Brendan Eich),開始着手爲計劃於1995年2月發佈的Netscape Navigator 2開發一種名爲LiveScript的腳本語言——該語言將同時在瀏覽器和服務器中使用(它在服務器上的名字叫LiveWire)。爲了趕在發佈日期前完成LiveScript的開發,Netscape與Sun公司建立了一個開發聯盟。在Netscape Navigator 2正式發佈前夕,Netscape爲了搭上媒體熱炒Java的順風車,臨時把LiveScript改名爲JavaScript

第二章 遭受高富帥排擠——處境艱難

由於JavaScript 1.0獲得了巨大成功,Netscape隨即在Netscape Navigator 3中又發佈了JavaScript 1.1。Web雖然羽翼未豐,但用戶關注度卻屢創新高。在這樣的背景下,Netscape把自己定位爲市場領袖型公司。與此同時,微軟決定向與Navigator競爭的自家產品Internet Explorer瀏覽器投入更多資源。Netscape Navigator 3發佈後不久,微軟就在其Internet Explorer 3中加入了名爲JScript的JavaScript實現(命名爲JScript是爲了避開與Netscape有關的授權問題)。

微軟推出其JavaScript實現意味着有了3個不同的JavaScript版本:Netscape Navigator中的JavaScript、Internet Explorer中的Jscript和ScriptEase中的CEnvi。與C及其他編程語言不同,當時還沒有標準規定JavaScript的語法和特性,3個不同版本並存的局面已經完全暴露了這個問題。隨着業界擔心的日益加劇,JavaScript的標準化問題被提上了議事日程。

第三章 組建個人勢力——披荊斬棘

1997年,以JavaScript 1.1爲藍本的建議被提交給了歐洲計算機製造商協會(Ecma,European Computer Manufacturers Association)。該協會指定39號技術委員會(TC39,Technical Committee #39)負責“標準化一種通用、跨平臺、供應商中立的腳本語言的語法和語義”(http://www.ecmainternational.org/memento/TC39.htm)。TC39由來自Netscape、Sun、微軟、Borland及其他關注腳本語言發展的公司的程序員組成,他們經過數月的努力完成了ECMA-262——定義一種名爲ECMAScript(發音爲“ek-ma-script”)的新腳本語言的標準。

第二年,ISO/IEC(International Organization for Standardization and International Electrotechnical Commission,國標標準化組織和國際電工委員會)也採用了ECMAScript作爲標準(即ISO/IEC-16262)。自此以後,瀏覽器開發商就開始致力於將ECMAScript作爲各自JavaScript實現的基礎,也在不同程度上取得了成功。

第四章 瘋狂錘鍊——王者歸來

目前JavaScript長據最受歡迎編程語言榜單前三的位置,尤其是伴隨着NodeJS的誕生,JavaScript的勢力已經觸及到世界的各個角落。王者已然歸來。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章