關於JavaScript的五四三,這篇整理好直接讓你懂!

關於JavaScript的五四三,這篇整理好直接讓你懂!




你大概聽過JavaScript,但它到底是何方神聖?這篇幫你解析它!


JavaScript 與 Java 有關係嗎?JavaScript 的編年史

1992:ScripEase

一家稱作 Nombas 的公司開發嵌入式語言「Cmm」,後改名為「ScripEase」。之後出現可以嵌入在網頁的 CEnvi 版本

1995:從 LiveScript 改名為 JavaScript

Netscape (網景公司) 與昇陽科技聯手完成 Netscape Navigator 2.0 的腳本語言
「LiveScript」。之後因為「趕流行」而改名為「JavaScript」:因為當時網景公司與昇陽科技組成的開發聯盟為了讓這門語言搭上當時正夯的 Java 程式語言這個「熱詞」,因此臨時將 LiveScript 改名為 JavaScript,但這也成為日後大眾對這門語言有諸多誤解(如誤以為這門語言與 Java 有關)的原因之一。

1996:制定統一 JavaScript 標準

微軟在 IE 3.0 內發布 「JScript」,是為 JavaScript 的複製版。此時有三種版本的 JavaScript,一為 Netscapt Navigator 3.0 中的 JavaScript「本尊」、IE 中的 JScript 與前述 Nombas CEnvi 中的 ScriptEase。同年 11 月,Netscape 決定將 JavaScript 提交給歐洲電腦製造商協會(ECMA)制定統一的 JavaScript 標準。

1997:發布第一版 ECMA-262

ECMA 發布 262 號標准文件(ECMA-262)的第一版,規定了瀏覽器腳本語言的標準,並將這種語言稱為「ECMAScript」(因為當時只有 Netscape 才能合法的使用「JavaScript」這個名字)。

2009:Node.js 讓 JavaScript 朝後端發展

CommonJS 規範讓 JavaScript 朝伺服器端發展。Node.js 就是遵循 CommonJS 規範,可以直接使用 Sockets API 建立各種網路服務程式。

現狀

多虧了 Node.js,讓原本只能應用在前端(瀏覽器端)的 JavaScript 現在也可以可應用在後端(伺服器端)。

JavaScript 有哪些特色?

- 可用任何編輯器開發

- 腳本不需要編譯,直接由 JavaScript 引擎「解釋(註:編輯一行就執行一行)」執行

- 靈活的「弱型別語言」:變數可被賦予不同資料類型的值。
  強型別的語言遇到函式引數型別和實際叫用型別不合的情況,經常會直接出錯或編譯失敗;而弱型別的語言常常靈活地進行隱式轉換因應。

- 基於原型(Prototype-Based)的物件導向語言

- 可跨平台使用:Linux、Windows、MacOS、Android 等

不只是網頁開發:JavaScript 的應用

前端(瀏覽器端)的網頁互動效果

- APP 開發

- 圖像使用者介面 (GUI)

- 2D 繪圖、3D 建模(如 Three.js)

- 網頁上實現虛擬實境(VR)與擴增實境(AR)

- 創建網頁伺服器、操作資料庫等後端操作

JavaScript 的開發環境

- 任何瀏覽器(IE、Google Chrome、Firefox、Safari、Opera 等)都自帶 JavaScript

- APP 開發

- 如何建置 JavaScript 的開發環境

1. 瀏覽器端:自帶 JavaScript 解釋器,不需另外建置開發環境。

2.伺服器端:至 Node.js 下載 Node.js 後,使用終端機(iOS) 或是命令提示字元(Windows)輸入「node -v」查看電腦上 Node.js 的版本已確認是否安裝。

 

今天的 JavaScript:熱門程式語言榜冠軍常客

根據 RedMonk 發表 2020 年第 3 季的熱門語言程式排名,儘管第二名 Python 之後的語言排行仍有變動之外,JavaScript 始終蟬聯冠軍寶座。有興趣可參考下列文章:

推薦閱讀:

RedMonk 2020 第三季程式語言排名:JavaScript 仍是冠軍、Python 首度把 Java 踢出前兩名外!

而 RedMonk 熱門程式語言排行榜是結合 GitHub 及 Stack Overflow 平台而綜合出的排名結果:GitHub 能反映程式語言實際被使用的狀況;而 Stack Overflow 則顯示程式語言的討論熱度。RedMonk 綜合以上兩者,歸納出排行,可作為未來程式語言趨勢的參考。

 

 

 

延伸閱讀:

僅靠咳嗽聲,無症狀的新冠患者也躲不掉人工智慧的緝捕!(上)

人工智慧預測系統,預測敗血症準確率高達80%!

人工智慧除了釀過威士忌,這次釀出每個年代的新滋味!(下)

Python與R語言之戰鹿死誰手?盤點5個即將消失的程式語言!

Google 在 Search Console 中啟用新的檢索統計報告

Google 12 月更新演算法!SEO今年排名最大洗牌

用說的就能寫程式!人工智慧替手傷工程師開發語音程式工具

這個網誌中的熱門文章

前端工程師設定CSS背景的五種方法(一)背景固定模式設定

RWD和AWD是啥?差別又是什麼?前端工程師課程大解密!

前端工程師入門HTML5就靠這些撇步!(8上)製作拖曳元素