歷史

為何要了解歷史?因為有過去的歷史,才有現在的JavaScript程式語言。

而且,學習程式語言是件滿枯燥無聊的事情,累或煩的時候可以看看這段不用花太多腦袋的故事。


在1995年時,由當時的Netscape(網景)公司的Brendan Eich(布蘭登·艾克),在網景領航員瀏覽器上首次設計實作而成(據說完成第一個版本,他只花了10天...)。因為Netscape(網景)公司與Sun(昇陽)公司合作,網景公司管理階層希望它像Java這麼拉風,因此取名為JavaScript,雖然它與Java程式語言並沒太大關係。JavaScript的名稱所有權是屬於Sun(昇陽)公司,後來變為Oracle(甲骨文)公司。

Microsoft(微軟)公司在1996年發佈了類似的網頁的直譯式Script(腳本)語言VBScript與JScript,其中JScript即是模仿JavaScript程式語言的產品,在Internet Explorer 3開始提供這兩個語言的支援。

為了統一JavaScript的標準,以及對抗Microsoft(微軟)公司的競爭,Netscape(網景)公司於1996年向ECMA International歐洲國際標準組織,提交了JavaScript,希望它能成為業界的標準,在1997 年的時候產生了初版的ECMAScript草案,自此ECMAScript成為JavaScript程式語言的標準規範。

隨著Microsoft(微軟)公司在早期的瀏覽器大戰中取得了大部份的市場佔有率,1998年,Netscape(網景)公司被美國線上(AOL)收購,以及Netscape(網景)公司開放了瀏覽器與相關產品的原始碼,成為現在的Mozilla基金會的Firefox瀏覽器與其他產品的基礎。雖然在2003年Microsoft(微軟)公司因壟斷敗訟,賠償美國線上(AOL)公司數億美金,但被收購後的Netscape(網景)公司後繼無力,終於在2003年解散。此次戰役稱為第一次瀏覽器大戰,Microsoft(微軟)公司的Internet Explorer瀏覽器獲得勝利,在2002達到90%以上的市場佔有率。而值得一提的,在這場戰役開始時,Netscape瀏覽器具有80%市場佔有率。

Microsoft(微軟)公司對於JavaScript程式語言,也是有很大的貢獻,它在2000年發佈的Internet Explorer 5中,發表了XMLHttpRequest (XHR)的第一個實作版本,誕生了後來的Ajax技術,這個技術在今天是JavaScript程式語言中非常重要的應用之一。但Microsoft(微軟)公司始終不是開放原始碼的擁護者,而且是敵對的一方,Microsoft(微軟)公司有許多技術都是不公開的專利技術與非開放標準。

第二次瀏覽器大戰約莫在2004年開始,首先由Mozilla基金會發表Firefox 1.0瀏覽器,另外一家歐洲的軟體公司的Opera瀏覽器,與Mozilla共同參與了推動瀏覽器相關規格的開放標準化。Mozilla基金會代表的是承襲自Netscape的技術血統,這次更加入了開放原始碼的力量。這場開放原始碼加上開放標準,對戰Microsoft(微軟)公司獨佔的市場大戰開始上演。此後,在2003年Apple(蘋果)公司加入戰局,發表分支於其他開放原始碼專案的WebKit渲染引擎,以及發佈Safari瀏覽器,除了支援Mac平台外,也跨足到Windows作業系統上的版本。Microsoft(微軟)公司則宣佈在2007年,停止在Mac平台上的IE支援。

2008年Google進軍瀏覽器市場,發佈Chrome瀏覽器,為這場大戰投下了震撼彈。Chrome採用了WebKit渲染引擎與自行研發的更快速V8 JavaScript引擎,接著發佈了Mac、Windows與Linux上的多版本瀏覽器,以及名稱為Chromium的開放原始碼專案。在這期間雖然Internet Explorer推出了改進的7、8版本,但眾多的瀏覽器品牌快速的侵蝕原本Internet Explorer的市場,使得在2010年Internet Explorer首次下降到50%。Microsoft(微軟)公司的瀏覽器市場龍頭地位顯得岌岌可危。

在之後短短數年間的瀏覽器的大戰,戰場從桌上電腦延燒到了行動裝置之上,也就是智慧型手機與平板電腦上。Microsoft(微軟)公司在行動裝置上的發展受到很大的挫敗,反觀Google的Android作業系統獲得極大的成功,掌握大部份的行動將置作業系統市場佔有率,間接促進瀏覽器的佔有率。以全平台的市場佔有率來看,在2012年Internet Explorer與Chrome瀏覽器的市場佔有率趨勢呈現了交叉。自此Google Chrome瀏覽器獲得最多的市場佔有率,在2015年底時,約有50%左右的市場,而Internet Explorer、Firefox、Safari三者的市佔率相近,差不多是10%~15%之間。

Google Chrome瀏覽器中的V8 JavaScript 引擎,大幅度的提升了JavaScript程式碼在瀏覽器中執行的效能,由於它也是開放原始碼專案的產物,目前已被用於其他軟體的計劃之中,例如Node.js、 Couchbase、MongoDB等,促使了JavaScript在除了瀏覽器平台以外的應用領域,這是一大進步。

規格版本

ECMAScript是Javascript規格標準,以下是各版本的發行日期,但標準發行並不代表在各個瀏覽器品牌中,即可使用其中的功能規格,還需等待各瀏覽器品牌廠商進行實作。

  • ECMAScript 6 (ES6) 發行於2015年中,為目前最新的官方版本
  • ECMAScript 5 (ES5) 發行於2009年底
  • ECMAScript 4 (ES4) 棄用
  • ECMAScript 3 (ES3) 發行於1999年底

results matching ""

    No results matching ""