JavaScript (簡稱 JS) 是具有一級函數 (first-class functions) 的輕量級、直譯式程式語言。它因為用作網頁的腳本語言而大為知名,但也用於許多非瀏覽器的環境,像是 node.jsApache CouchDB。JS 是一個以原型為基的程式語言 (prototype-based)、多典範、動態腳本語言、支援物件導向、指令式以及宣告式 (如函數式程式設計) 風格。 閱讀關於 JavaScript 以取得更多資訊。

本章節主要說明 JavaScript,內容將不會針對網頁或主機環境做介炤。要取得更多有關網頁的 APIs 請參考 Web API 和 DOM

JavaScript 所採用的標準為 ECMAScript,自 2012 年起,所有現代的瀏覽器均已全面支援 ECMAScript 5.1。較老舊的瀏覽器最少也會支援 ECMAScript 3。ECMA International 於 2015 年 6 月 17 日發布第六版的 ECMAScript,該版本正式名稱為 ECMAScript 2015,但通常都被稱作 ECMAScript 6 或是 ES6。由於 ECMAScript 標準是每年為一個週期發布,本文件會參考最新的草稿版本,也就是目前的 ECMAScript 2017

別搞混了 JavaScript 和 Java 程式語言。雖然 "Java" 和 "JavaScript" 都是屬於美國和其他國家 Oracle 公司的商標,但兩個語言有著非常不同的語法、語意和用途。

教學

透過指南和教學來學習編寫 JavaScript。

入門

JavaScript 教學
如果你是剛開始學 JavaScript,這個教學會帶你看看這個語言。
JavaScript 技術概觀
介紹瀏覽器的 JavaScript。
JavaScript 物件導向介紹
介紹 JavaScript 物件導向的概念。

中等

重新介紹 JavaScript
為了那些以為他們懂 JavaScript 的人寫的簡介。
JavaScript 資料結構
簡介在 JavaScript 可用的資料結構。
比較
JavaScript 提供了三種不同的數值比較方式:嚴謹的相等用 ===,寬鬆的相等用 ==,以及 Object.is() 方法。

進階

繼承與原型鍊
對於原型繼承的常見的迷思和誤解。
嚴謹模式
嚴謹模式會禁止您使用未初始化過的變數。這樣的限制源自於 ECMAScript 5 的規範,為了提高效率和簡化偵錯。
JavaScript 型別陣列
JavaScript 類型陣列提供一個存取二進制數據的機制。
記憶體管理
JavaScript 的記憶體生命週期和垃圾回收機制。
併行模組和事件循環
JavaScript 具有基於「事件循環」的併行模組。

參考

瀏覽完整的 JavaScript 參考文件

標準內建物件
瞭解標準內建物件: ArrayBooleanDateErrorFunctionJSONMathNumberObjectRegExpStringMapSetWeakMapWeakSet 等等。
表式法與運算子
瞭解更多 JavaScript 運算子的行為:instanceoftypeofnewthis運算子優先序等等。
敘述和宣告
瞭解 do-whilefor-in、 for-of、 try-catchlet、 var、 const、 if-else、 switch 和其他 JavaScript 敘述和關鍵字的運作方式。
函數
瞭解如何運用函數來開發你的應用程式。

工具與資源

有用的工具和資源幫助你更好的撰寫 JavaScript

Firefox 開發工具
ScratchpadWeb ConsoleJavaScript ProfilerDebugger 等等。
Firebug
編輯、偵錯和在任何網頁即時監視 CSS、HTML和 JavaScript。
JavaScript Shell
JavaScript Shell 讓你更快的測試片段的 JavaScript。
TogetherJS
合作更簡單了。藉著在你的網站增加 TogetherJS,你的用戶們能在網站上互助 in real time!
Stack Overflow
Stack Overflow 上有關 JavaScript 的問題。
JavaScript 版本和發行說明
瀏覽 JavaScript 的功能歷史和兼容狀態。
JSFiddle
編輯 JavaScript、CSS、HTML 並取得及時結果。可以使用外部資源和與在線上與你的夥伴協作。

Join the JavaScript community

Choose your preferred method for joining the discussion:
 

文件標籤與貢獻者

 最近更新: cwlin0416,