本文已過原作者授權翻譯,
JavaScript于25年前(1995年12月4日)首次向公眾推出,JavaScript 最初開發僅用了10天時間,便迅速成為最受歡迎的編程語言之一,如今全球有數百萬的開發人員每天都在使用它, 2020年是它的25周年紀念日——對于這個已經成為最受歡迎的編程語言之一,這無疑是一個巨大的里程碑,
JavaScript 是前端開發的首選語言,后面并催生了微軟的 Typescript,它是 JavaScript的超集,具有更強的可選型別系統,供開發人員在瀏覽器中運行時編譯成JavaScript,
JavaScript 和 TypeScript 都符合 ECMAScript,這是 JavaScript 和 node.js 的標準,這要歸功于Google強大的 V8 引擎,可以在瀏覽器之外運行應用程式,
JavaScript 對 Web 的影響是巨大的, 科技巨頭已經也擁抱了 JS, 除了Google的V8,還有開源專案,例如Facebook的React和 Google 的Angular,當然,還有我們的 尤雨溪 的 Vue,
1995年5月,**Netscape (網景公司)和 Sun (太陽微系統公司) 推出了JavaScript,隨后微軟在1995年12月推出了Visual Basic (VB),將其作為一個標準,用于為其Internet Explorer瀏覽器使用 VB 腳本創建web應用程式,甲骨文在2008年收購Sun **主要是為了插手Java及其龐大的開發生態系統,
JavaScript 的未來并不總是像今天這么確定的,
Cory House 是開發人員培訓網站 Pluralsight 的一名JavaScript教育作業者,他回憶說,早期的JavaScript 是否能成功很難確定,
“JavaScript 是幾天內就完成了,最初只在一個瀏覽器中使用,微軟的第一個瀏覽器附帶了他們自己風格的JavaScript 叫 JScript,今天,JavaScript 還被用于構建桌面應用、移動設備應用、健身追蹤器、機器人和眾多嵌入式系統,它甚至是詹姆斯·韋伯太空望遠鏡的一部分,這個望遠鏡使用 Nombas 的 ES1 級嵌入式 JavaScript,作為其板載控制軟體的一部分,”
”我們可以用面向物件的或函式式的方式撰寫代碼,由于 JavaScript 有類似于c的語法,因此使用過其他類似c語言的人對它很熟悉,JavaScript 通過不斷接受其他語言的好點子而保持著“更新”,
Pluralsight 的另一位作者Jonathan Mills指出,JavaScript 已不再局限于瀏覽器,他說:“現在,JavaScript 已經發展成為一個龐大的生態系統,對軟體開發的每個領域都具有影響,”
微軟的 TypeScript 在 GitHub 上越來越受歡迎,這要歸功于基于 Javascript 的大型專案的存在,但它也可能被 Web Assembly帶來的新興技術所取代,
W3C 于2019年12月批準該標準以來,主流Web瀏覽器現在以與HTML,CSS和JavaScript相似的級別支持WebAssembly或Wasm,
WebAssembly是一個虛擬指令集架構,它支持web上的高性能應用程式,并為web上更多的AI搭建了平臺,這些AI可以用于視頻和音頻編解碼器、圖形和加密計算,
Mills告訴ZDNet,到目前為止,Web Assembly在目標領域具有潛力,
Mills 說 “在構建 JavaScript 應用程式時,JavaScript 代碼會按原樣發送到瀏覽器,并在運行時在瀏覽器中進行編譯和運行,WebAssembly 通過在部署之前編譯代碼來簡化此程序,并有望在此程序中顯著提高性能 ”,
“當構建圖形或計算密集型的復雜Web應用程式時,這非常有用,然而,目前最主要的障礙是與WebAssembly相關的最杰出的語言是Rust和C,JavaScript 之所以起飛,部分原因是因為易用性和快速開發風格,C 和 Rust 都沒有這種品質,”
為了慶祝JavaScript誕生25周年,下面列出影響其歷史的重要里程碑:
萬維網(1989年3月)
在CERN作業時,蒂姆·伯納斯·李(Tim Berners-Lee)在一份名為“資訊管理:提案”的檔案中提出了他對網路的構想,
文章地址:https://webfoundation.org/about/vision/history-of-the-web/
第一個網站 (1991年8月6日)
第一個網站于1991年8月6日上線,它被用于萬維網專案本身,并托管在Tim Berners-Lee的NeXT電腦上,
更多資訊:http://info.cern.ch/hypertext/WWW/TheProject.html
Mosaic (1993年6月)
NCSA Mosaic,或簡稱 Mosaic,是互聯網歷史上第一個獲普遍使用和能夠顯示圖片的網頁瀏覽器,它是由伊利諾伊大學厄巴納-香檳分校的NCSA組織在1993年所發表,并于1997年1月7日正式終止開發和支持,在當時人氣爆發的大受歡迎,Mosaic 的出現,算是點燃了后期互聯網熱潮的火種之一,
后來網景導航者瀏覽器的開發作業,聘用了許多原有的Mosaic瀏覽器工程師,但是沒有采用Mosaic網頁瀏覽器的任何代碼,傳承網景瀏覽器代碼的后裔為Firefox瀏覽器,
更多資訊:https://en.wikipedia.org/wiki/Mosaic_(web_browser)
Netscape (網景公司) (1994年9月9日)
馬克?安德森(Marc Andreessen)和吉姆?克拉克(Jim Clark)創立了后來的網景通信公司(Netscape Communications Corporation),并于1994年9月9日推出了他們的第一個瀏覽器,最初它被稱為Mosaic Netscape,但后來被重新命名為Netscape Navigator以避免與NCSA的商標問題,這個瀏覽器的內部代號是Mozilla,意思是“Mosaic 殺手”,它確實迅速成為了最受歡迎的瀏覽器,
更多資訊:https://en.wikipedia.org/wiki/Netscape_Navigator
JavaScript (1995年5月)

馬克·安德森(Marc Andreessen)設想了一個更具動態性的Web,并認為需要一種易于Web設計者使用的語言, 他招募了Brendan Eich,他在10天之內于1995年5月為Netscape瀏覽器撰寫了原型,該語言最初稱為Moca,后來稱為LiveScript,最后重命名為JavaScript(作為Java的輔助語言), JavaScript的正式發布日期是1995年12月4日,
更多資訊:https://en.wikipedia.org/wiki/JavaScript
JScript (1996年8月)
Microsoft 對 Netscape的 JavaScript 進行了逆向工程,創建JScript并將其作為Internet Explorer 3的一部分,引入了不符合標準的專有擴展,使開發人員很難創建一個在所有瀏覽器中都能正常運行的網站, 最終,Internet Explorer成為瀏覽器大戰中的主導軟體,
更多資訊:https://en.wikipedia.org/wiki/Browser_wars
ECMAscript 1 (1997年6月)
Netscape向ECMA International提交了 JavaScript,以創建標準規范,然后其他瀏覽器供應商可以實施該規范,這導致了1997年6月語言規范 ECMAScript 的正式發布,
更多資訊: https://en.wikipedia.org/wiki/ECMAScript
Mozilla (1998年1月23日)
1998年1月23日,在瀏覽器市場份額急劇下降的情況下,Netscape宣布它將發布Netscape Communicator 5.0的源代碼,希望它將成為一個受歡迎的開源專案, Mozilla專案就是這樣誕生的,
更多資訊:https://www.mozilla.org/en-US/about/history/
XMLHttpRequest (1999年3月)
Microsoft 于1999年3月在Internet Explorer 5.0中發布了XMLHttpRequest的原始形式,XMLHttpRequest是一種API,用于在Web瀏覽器和Web服務器之間傳輸資料,它在將來會被證明是有用的,
ECMAscript 3 (1999年12月)
該版本增加了正則運算式,更全的字串處理,新的控制陳述句, try/catch 例外處理,更嚴格的錯誤定義,數字輸出格式和其他增強功能, 由于ECMAscript 4停滯,該版本盛行了十年,
更多資訊:https://en.wikipedia.org/wiki/ECMAScript
JSON (2001年4月)
Douglas Crockford指定了JSON(JavaScript物件表示法),這是一種基于JavaScript子集的輕量級資料交換格式, JSON資料在前端更易于加載和使用,并且到本世紀末將取代XML,成為Web上的資料交換格式,
更多資訊:https://www.json.org/json-en.html
Firefox (2004年11月9日)
Firefox 于 2002 年由Dave Hyatt,Joe Hewitt和Blake Ross作為Mozilla專案的實驗分支開始,為了對抗Mozilla Suite的軟體膨脹,他們創建了一個獨立的瀏覽器,首先命名為Phoenix,后來命名為Firebird, 最后是Firefox, Firefox 1.0版于2004年11月9日發布,Firefox 的速度,可用性和市場營銷幫助它在Internet Explorer上贏得了市場份額, 在啟動的五年內,Firefox占了所有Web瀏覽的近三分之一,
更多資訊:https://blog.mozilla.org/press/2004/11/mozilla-foundation-releases-the-highly-anticipated-mozilla-firefox-1-0-web-browser/
AJAX (2005年2月18日)
杰西·詹姆斯·加勒特(Jesse James Garrett)創造了AJAX(異步JavaScript + XML)一詞,用以描述新興Web應用程式(如GMail和Google Maps)背后的異步技術,該技術允許網頁動態更改內容而無需重新加載,
更多資訊:https://en.wikipedia.org/wiki/Ajax_(programming)
jQuery (2006年8月)
jQuery 是一個由John Resig設計的JavaScript庫,用于簡化HTML DOM樹的遍歷和操作以及事件處理,CSS影片和AJAX, 在此期間啟動的其他JavaScript框架/庫包括Mootools和Prototype,
更多資訊:https://openjsf.org/
Google Chrome (2008年12月)
Google于2008年12月11日發布了Chrome瀏覽器,該瀏覽器使用了與Safari相同的WebKit渲染引擎和一個更快的 JavaScript 引擎 V8, 不久之后,針對Windows,OS X和Linux平臺的開源版本以Chromium的名稱發布, 憑借快速的發布周期和對速度的關注,谷歌瀏覽器最終取代了所有其他瀏覽器,
更多資訊:https://www.google.com/chrome/
Node.js (2009年3月)
Node.js 最初由Ryan Dahl于2009年3月基于Google的開源V8 JavaScript引擎開發, 它為在Web服務器上使用JavaScript鋪平了道路, Node.js函式是非阻塞的,允許服務器處理大量并發連接, 它代表了“ JavaScript無處不在”范例,統一了圍繞一種編程語言的Web應用程式開發,
更多資訊:https://nodejs.org/en/
npm (2009 年)
npm(最初是Node Package Manager的縮寫)是Isaac Z. Schlueter開發的JavaScript編程語言的軟體包管理器, npm Registry是Node.js,前端Web應用程式,移動應用程式和其他應用程式的開源代碼包的公共集合,
更多地址:https://www.npmjs.com/about
ES5 (2009年12月3日)
ECMAScript 5 是ECMAScript 3的十多年后的2009年12月發布,是ECMAScript 3的增量升級版,雄心勃勃的ECMAScript 4被正式放棄,代號為Harmony,某些功能成為ECMAScript6,原始ECMAScript 4計劃的其他功能 將被洗掉以在后續版本中采用, 形成了一個新的決心,即在整個TC39的共識下開發任何新的想法,以防止將來發生分裂的可能性,
更多資訊:https://en.wikipedia.org/wiki/ECMAScript
AngularJS (2010年10月20日)
AngularJS 由Misko Hevery于2010年10月發布,并迅速成為最受歡迎的JavaScript MVC框架, 它提供了雙向資料系結,依賴項注入,路由包等等, 在此期間啟動的其他JavaScript框架/庫包括Backbone,Ember和Knockout, 該專案由Angular在2016年繼承,由Google Angular團隊領導的AngularJS的完全重寫,
更多資訊:https://angularjs.org/
TypeScript (2012年10月12日)
TypeScript 是一種JavaScript的超集,它將靜態型別添加到語言中,經過微軟兩年的內部開發,于2012年10月首次發布(0.8版本),
React (2013年5月29日)
React 是一個JavaScript庫,用于構建可組合的用戶界面,由Jordan Walke于2013年開發并開源,它由Facebook和一個由開發者和公司組成的社區共同維護,
更多資訊:https://reactjs.org/
Vue.js (2014年2月25日)
由Evan You創建的 Vue 是一個開放源代碼, 它是一個 model–view–viewmodel 的前端JavaScript框架,用于構建的用戶界面和單頁應用程式, 該專案的第一個源代碼提交于2013年7月,Vue于2014年2月首次發布,
Next.js (2016年的10月25日)
Next.js是由Vercel創建的開源React框架, 它可以唯一滿足靜態和動態網站及應用程式的需求, Next.js的增量靜態再生為用戶提供了靜態站點生成器的所有功能,并且可以添加無限數量的頁面并在以后更新它們-無需重建整個站點,
更多資訊:https://nextjs.org/
Svelte (2016年11月26日)
Svelte是一個由Rich Harris創建的免費和開源的前端JavaScript框架,
Svelte 是一種全新的構建用戶界面的方法,傳統框架如 React 和 Vue 在瀏覽器中需要做大量的作業,而 Svelte 將這些作業放到構建應用程式的編譯階段來處理,
與使用虛擬(virtual)DOM 差異對比不同,Svelte 撰寫的代碼在應用程式的狀態更改時就能像做外科手術一樣更新 DOM,
更多資訊:https://svelte.dev/
WebAssembly (2017年三月)
WebAssembly(縮寫為Wasm)是基于堆疊的虛擬機的二進制指令格式, Wasm 被設計為可移植目標,用于編譯高級語言(如 C/C++/Rust),從而可以在Web上為客戶端和服務器應用程式進行部署,前驅技術是來自Mozilla和Google Native Client的asm.js,
更多資訊:https://webassembly.org/
OpenJS Foundation (2019年3月12日)
眾所周知,Node.js 和 JavaScript 有著千絲萬縷的關系,也有著很多的合作,但他們屬于不同的fondation,辦起事來非常不方便,所以有必要將這兩個基金會合并以提高效率了,于是,在2019年3月13日,Node.js基金會 和 JS基金會 宣布合并為 OpenJS基金會,
OpenJS Foundation的主要目標是:
- 促進關鍵JavaScript和Web解決方案及相關技術的廣泛采用和持續開發;
- 促進JavaScript開發社區中的協作;
- 在整個端到端JavaScript生態系統中為開源專案創建重心,指導它們邁向開放治理和多樣化的協作者基礎;
- 托管基礎結構以支持托管的JavaScript開源專案;
- 通過推進專案和戰略合作伙伴關系,來建立一個開放和可訪問的網站,
更多資訊:https://openjsf.org/
Deno (2020年5月13日)
Den o是一個基于V8 JavaScript引擎和Rust編程語言的JavaScript和TypeScript運行時,它是由Node.js的原作者Ryan Dahl創作的,這是他在JSConf 2018年歐盟會議上發表的題為**“10 Things I Regret About Node.js”**的演講中宣布的,Deno 在單個可執行檔案中明確承擔了運行時和包管理器的角色,而不需要單獨的包管理程式,
更多資訊:https://deno.land/
最后
對于JavaScript的未來,有一件事很清楚:協作是關鍵, “瀏覽器大戰”已經過去了,用戶和開發人員都不想重溫由于缺乏互操作性而帶來的問題, 幸運的是,開源已經盛行,并代表著JavaScript語言和社區的開發和治理的前進之路,
代碼部署后可能存在的BUG沒法實時知道,事后為了解決這些BUG,花了大量的時間進行log 除錯,這邊順便給大家推薦一個好用的BUG監控工具 Fundebug,
原文:
https://www.zdnet.com/article/javascript-at-25-the-programming-language-that-makes-the-world-go-round/
https://js25.org/
交流
文章每周持續更新,可以微信搜索**【大遷世界 】第一時間閱讀,回復【福利】**有多份前端視頻等著你,本文 GitHub https://github.com/qq449245884/xiaozhi 已經收錄,歡迎Star,
CSDN認證博客專家
TypeScript
ECMAScript 6
前端框架
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/236547.html
標籤:其他
