正在準備工作環境...
函數
函數就是「把一段程式包裝起來,取個名字,需要的時候再呼叫」。
想像你常常需要算含稅價格:原價 x 1.05。 與其每次都寫一遍計算公式,不如做一個「計算含稅價」的函數,以後一呼叫就搞定。
宣告函數
語法結構:
function 函數名稱() {
// 要執行的程式
}
函數名稱() // 呼叫函數
重點:宣告函數不會自動執行,要「呼叫」它才會跑。
參數(Parameters)
函數可以接收「輸入」,讓它更靈活:
可以有多個參數:
回傳值(return)
函數可以「算出結果」交回來,用 return 關鍵字:
return 之後的值可以存進變數,或直接使用:
函數就是「可重複使用的工具」
沒有函數時——每次都要重寫:
let tax1 = 500 * 1.05
let tax2 = 800 * 1.05
let tax3 = 1200 * 1.05
有函數時——呼叫就好:
calcTax(500)
calcTax(800)
calcTax(1200)
實際應用:運費計算器
實際應用:訂單總價計算
AI 協作:學了這個,跟 AI 怎麼配合?
函數讓你把 AI 的程式「模組化」——一段邏輯包一個函數,好讀也好改。
你的人類優勢:
- 你能定義函數的「輸入是什麼、輸出要什麼」
- 你能要求 AI 把冗長的程式碼拆成小函數,每個函數只做一件事
可以這樣跟 AI 說:
幫我寫一個函數 formatPrice(price),輸入數字,輸出帶千分位的字串,例如 1200 → "1,200"。
練習題
互動示範
DEMO 1可以修改程式碼試玩
DEMO 2可以修改程式碼試玩
DEMO 3可以修改程式碼試玩
DEMO 4可以修改程式碼試玩
DEMO 5可以修改程式碼試玩
DEMO 6可以修改程式碼試玩
DEMO 7可以修改程式碼試玩
挑戰任務
Task 1
請寫一個函數 double(n),回傳 n 的兩倍。然後呼叫 double(150) 並用 console.log 印出結果。
Task 2
請寫一個函數 freeShipping(amount),如果 amount >= 1000 回傳 "免運",否則回傳 "運費 60 元"。分別用 console.log 印出 freeShipping(1200) 和 freeShipping(500) 的結果。
Task 3
請寫一個函數 totalPrice(price, qty),回傳 price * qty。然後用 console.log 印出 totalPrice(350, 4) 的結果。
← BackNext Lesson →