JavaScript 是什麼?認識JS的起源與前世今生
JavaScript 是什麼?
JavaScript 是一種能在瀏覽器裡直接執行的程式語言,和 HTML 與 CSS 並列網頁前端三大核心技術,然而,HTML 與 CSS 都不是程式語言 (programming language),HTML 是定義內容的標籤語言 (markup language),而 CSS 是一種頁面樣式 (style)。
只有 JavaScript 是程式語言,JavaScript 賦予了網頁互動、處理和創造新內容的可能性,開發者透過 JavaScript 賦予網頁使用者可以在網頁上有操作行為。
JavaScript 的起源
JavaScrpit 誕生於1995年,由 Netscape 這家公司專門為其 Netscape 瀏覽器而發明的。一開始的角色是讓使用者與網頁有即時的互動效果,例如檢查表單、跳出 Alert 視窗,以及網頁特效。
JavaScript 誕生時,瀏覽器的世界還處於戰國時代,各家的標準不一,常常有在 IE 能執行的效果,到另一個瀏覽器完全走樣的問題,JavaScript 的維護為網頁開發者帶來巨大的痛苦。當時前端工程師的主要工作,通常是維持網頁在各瀏覽器的一致性。
瀏覽器的戰國時代,Source: History of the web browser, Wikipedia
從這張圖上,你可以觀察到在 1995 年前後,有許多五花八門的瀏覽器,進入 2010 左右才慢慢由 Chrome、Firefox、IE、Safari 等幾大家獨佔鰲頭。
在這個混亂的時期,一個叫 ECMA 的國際標準化組織致力於統一標準,他們推出的標準稱為 ECMAScript,例如 ECMAScript 第 5 版會簡稱為 ES5。1999~2010 年之間,JavaScript 通行標準得到廣泛支持,也慢慢轉變成一個成熟的程式語言。今天坊間 JavaScript 學習教材大多採用 ES5 或 ES6,ES6 又稱為 ES2015。
ECMAScript v.s. JavaScript
ECMA International 組織訂定了語法標準,而各軟體工具採用其制訂的標準,逕行開發出各自版本的 JavaScript。因此,我們可以說 ECMAscript 是語法標準的規格書,而 JavaScript 是這份規格書的時作品。
實務上,JavaScript 會因為不同的執行環境 (e.g. 不同廠牌的瀏覽器) 有不同支援程度,在運用較新發佈的語法時,需要先使用Can I use… Support tables for HTML5, CSS3, etc等網站查詢瀏覽器的支援度。
JavaScript 的前世今生
JavaScript 是一個歷史悠久的語言,它在 1995 年被發明,歷經數次重大迭代,持續與時俱進,從一個網頁特效工具箱,逐漸變成一個企業級的開發語言。
在學習 JavaScript——或說,在學習前端技術時,需要稍微瞭解時代的發展沿革,以下這支影片分享的【前端的前世今生】我們剪輯出與 JavaScript 有直接相關的部分,希望可以幫助你建立基本的認識。
影片片長約 19 分鐘,前半部為網頁開發的前端發展簡史,後半介紹了 Web Server 網路伺服器的入門概念,協助你認識網頁運作的方式。