Link Search Menu Expand Document

JavaScript 是什麼?認識JS的起源與前世今生

JavaScript 是什麼?

JavaScript 是一種能在瀏覽器裡直接執行的程式語言,和 HTML 與 CSS 並列網頁前端三大核心技術,然而,HTML 與 CSS 都不是程式語言 (programming language),HTML 是定義內容的標籤語言 (markup language),而 CSS 是一種頁面樣式 (style)。

只有 JavaScript 是程式語言,JavaScript 賦予了網頁互動、處理和創造新內容的可能性,開發者透過 JavaScript 賦予網頁使用者可以在網頁上有操作行為。

https://assets-lighthouse.alphacamp.co/uploads/image/file/4552/image_1.png

JavaScript 的起源

JavaScrpit 誕生於1995年,由 Netscape 這家公司專門為其 Netscape 瀏覽器而發明的。一開始的角色是讓使用者與網頁有即時的互動效果,例如檢查表單、跳出 Alert 視窗,以及網頁特效。

JavaScript 誕生時,瀏覽器的世界還處於戰國時代,各家的標準不一,常常有在 IE 能執行的效果,到另一個瀏覽器完全走樣的問題,JavaScript 的維護為網頁開發者帶來巨大的痛苦。當時前端工程師的主要工作,通常是維持網頁在各瀏覽器的一致性。

https://assets-lighthouse.alphacamp.co/uploads/image/file/4553/image_2.png

瀏覽器的戰國時代,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 有直接相關的部分,希望可以幫助你建立基本的認識。

https://vimeo.com/368713918

影片片長約 19 分鐘,前半部為網頁開發的前端發展簡史,後半介紹了 Web Server 網路伺服器的入門概念,協助你認識網頁運作的方式。