JavaScript全講-歷史

寫在前面的話

一直以來,想寫關於JavaScript的系列文章,在經過一段時間的醞釀,終於準備好相關的資料,今日先發布開篇。標題命名爲“全講”,是因爲我不僅僅單方面的講JavaScript,而是針對其全面來講,並且也會保持我一貫的宗旨,力求簡單易懂!


接下來的系列文章,將涉及JavaScript各種類庫的發展,設計模式,MVC架構,構建,模塊化,與之依賴的HTML5等等,希望大家會有所收穫。


我們先來看看JavaScript的歷史!


1995年

Netscape發佈了一個可以運行在網頁端的語言,稱之爲LiveScript。發明LiveScript的初衷是:由於當時網絡太爛,很多數據需要驗證,而提交到服務器進行驗證過於麻煩,急需一種可以運行在網頁端的語言,來規避掉不必要的數據提交。


1995年12月

發佈LiveScript的Netscape與Sun達成協議,LiveScript改名爲JavaScript,改名之後可以藉助Java語言的聲勢來發展,而這一年,Java也纔剛剛發佈第一個版本。


時至今日,JavaScript的發展更在Java之上,不得不讓人感嘆!


1996年

Microsoft公司“模仿”JavaScript開發了一款相近的語言,取名JScript. 微軟公司發佈的瀏覽器IE中,內置JScript。同年,Netscape把JavaScript提交給ECMA(歐洲計算機制造聯合協會),期望讓JavaScript成爲國際標準,進而可以可以對抗微軟。這也是爲什麼現在稱呼JavaScript爲ECMAScript的緣故了。


PS : 外國人是防火防盜防微軟,而國內是防火防盜防企鵝!


1997年

ECMA組織發佈了瀏覽器語言的標準ECMAScript1.0。請注意,這裏只是“標準”,而JavaScript是ECMAScript標準的實現者。


1999年

ECMA3.0發佈。在這個階段,大家用腳本基本上只做兩件事情。1. 表單驗證  2. 漂浮廣告!此時,它並沒有讓用戶感受到優雅,反而感受到煩人!

就在這一年,改變JavaScript未來的事情發生了!IE4.0發佈,內置異步通訊的組件,允許腳本語言發送HTTP請求到服務器,這就是Ajax的原型,然而在當時並沒有引起關注!



2000年

在這個階段,沒有Ajax,任何一個功能都要加載整個頁面。這個階段是如何避免這種情況的呢?答案是IFrame!它非常穩定好用,所以直到現在,很多網頁都還是以IFrame爲主!比如QQ郵箱。



2005年

Google在Gmail,Google Map,Google Search等產品中全面使用異步請求!這麼多年來,技術人員一直視Gmail爲技術巔峯作品,在過往的Blog中,時常可以看到對Gmail的讚譽! 不過現在稍具經驗的前端工程師,可能都會對其不屑一顧,可見技術的迭代速度令人驚歎呀!


當時僅僅稱呼這種技術爲異步通訊,不叫Ajax。Ajax這個詞來自於論文《Ajax: A New Approach to Web Applications》。當時的Ajax非常難以使用,需要在操作系統中引入額外的DLL文件。

在這一年,Netscape在對抗IE以完敗結束! 而也就在這一年,Apple發佈了一款開源瀏覽器Safari ,你可能沒聽過Safari,但是它有另外一個名字:Webkit !  


如果你連Webkit都不知,我只能這麼和你說了

目前市場上的主流瀏覽器,例如,Chrome,IE9, IE10,IE11,360極速瀏覽器,搜狗瀏覽器,百度瀏覽器......它們全都是基於Webkit引擎的!而最新的Microsoft Edge,號稱“完全兼容” Webkit!


順便說一聲,當時蘋果剛剛發佈了iPhone第一代,諾基亞還是統治手機的帝國!


2007年

這時候由於Ajax的風靡,JavaScript已經奠定了其在前端的地位!ECMA組織想加快其發展,發佈了ECMA4.0。

4.0對3.0做了大幅度的升級! 由於太大幅度,Google,微軟,雅虎都反對ECMA這種做法!

別忘記,ECMA只是標準,這些大公司不實現ECMA標準,一切都是扯淡。所以ECMA只能妥協,大部分特性留在之後的版本中開放。而ECMA4.0版本也只能擱置開發。

到底有多大幅度? 我們來感受一下!! 今年最新發布的ECMA6.0的大部分特性,是ECMA4.0中提到的!時隔8年!


2008年

Google發佈了第一版的Chrome瀏覽器,Chrome瀏覽器是基於Webkit渲染,內置JavaScript虛擬機V8來運行。Webkit瀏覽器的迅速發展,直接導致IE市場的崩潰。驗證了一句經典臺詞:出來混,早晚要還的!


Chrome在基於Webkit開發後,已經自己維護一個Webkit分支,到目前爲止,Google已經命名這個新的項目爲Blink.


爲什麼我沒有提到Firefox呢?因爲我覺得Firefox相對其他瀏覽器並沒有出彩的地方,唯一值得稱讚的就是它一直是ECMA標準的率先執行者,可是這並沒有什麼卵用!


2009年

ECMA5.0發佈。5.0包含4.0的一部分功能,其他的功能安排的後來的版本中開發。5.0中主要是一些基礎功能函數,例如Array中的Foreach,map等等。目前5.0大部分的瀏覽器都已支持,IE8除外。

具體5.0的各種功能,可以參考Underscore.js,基本涵蓋5.0大部分的新特性。



2014年

大家都對JavaScript的地位有了普遍的認同。各種前端MVC框架的出現,讓JavaScript開發變得簡單可控制。加上HTML5,雲端解決方案,NodeJS的流行,讓JavaScript一舉成爲最流行的開發語言,地位無可撼動!


2015年

ECMA6.0發佈。針對JavaScript定義了類,包,動態加載等功能!但是由於其改動太大,能否被大衆接受,只能留給時間來驗證了!








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