JavaScript
瀏覽器唯一的母語,到處都能跑,是網頁互動的基礎。
還不熟這個主題?先看基礎: 後端 Backend
一句話解釋
JavaScript 是瀏覽器的母語,網頁上所有互動幾乎都靠它,到處都能跑。
白話文說明
JavaScript 是唯一能在所有瀏覽器裡直接執行的語言,網頁上的點擊、動畫、即時更新幾乎都靠它。後來透過 Node.js,它也能跑在伺服器上,成為少數「前後端通吃」的語言。
它的優點是無所不在、資源最多;缺點是「沒有型別」,專案一大就容易出現難找的錯誤。這正是 TypeScript 出現的原因——多數正式專案會選 TypeScript,但底層跑的還是 JavaScript。
架構圖
運作流程
新手常踩的坑
把兩個簡單的小數相加,結果卻不太對勁:
console.log(0.1 + 0.2); // 0.30000000000000004
console.log(0.1 + 0.2 === 0.3); // false
這不是 JavaScript 的錯——電腦用二進位儲存小數,有些分數沒辦法剛好表示。記住一課:金額或數值別直接比「完全相等」,先四捨五入,或改用整數(例如以「分」為單位)來算。
常見誤解:以為 JavaScript 是 Java 的輕量版。兩者毫無關係,名字相近只是 1990 年代的行銷操作。而且 JavaScript 不只活在瀏覽器——透過 Node.js 它也能跑伺服器,一種語言前後端通吃。
重點整理
- JavaScript=瀏覽器的母語,無所不在。
- 前後端都能用,生態最龐大。
- 缺型別,正式專案多半改用 TypeScript。
生活化比喻
像全球通用的旅行語言:到哪都有人會說,溝通方便,但細節容易雞同鴨講。
優勢
- 瀏覽器原生支援,無需安裝就能跑
- 生態龐大、資源最多
- 前後端都能用(Node.js)
缺點
- 沒有型別,大專案容易出隱藏錯誤
- 歷史包袱多,部分行為違反直覺
適用場景
- 網頁互動、小型腳本、快速嘗試
- 學習程式的第一步
不適用場景
- 需要嚴謹型別保障的大型系統(建議用 TypeScript)
新手評分卡
- 新手推薦度
- 4/5
- 學習成本(分數越高=成本越高)
- 2/5
- 市場需求
- 5/5
- AI 生成友善度
- 5/5
常見問題
JavaScript 和 Java 是同一個東西嗎?
完全不同,名字像只是行銷巧合。JavaScript 是瀏覽器與網頁的語言;Java 是另一套用於企業後端與 Android 的語言。
我一定要學 JavaScript 嗎?
想碰網頁幾乎避不開——它是瀏覽器唯一原生支援的語言,前端、後端(Node)都能用,是 web 的通用語。
JavaScript 和 TypeScript 該學哪個?
先懂 JavaScript 基礎,再加 TypeScript(它就是「加了型別的 JavaScript」)。型別能讓 AI 產碼更準、bug 更早現形,正式專案建議用。
參考來源
- JavaScript — MDN Web Docs — Mozilla
- ECMAScript Language Specification — Ecma International, TC39