課程
學習筆記

12
Unit 01 JavaScript 基礎
4 知識點
JS · 01
JAVASCRIPT 簡介
變數、型別、函式

let / const 宣告變數,typeof 檢查型別,template literal 組合字串,function 定義與呼叫。

let · consttypeoffunctiontemplate literal
等待輸入...
JS · 02
JAVASCRIPT 簡介
陣列、物件、JSON

Array 的 push / filter / map,Object 屬性存取,JSON.stringify 與 JSON.parse 序列化。

Array.pushfiltermapJSON
目前的陣列:["Python", "PyTorch", "JS"]
JS · 03
JAVASCRIPT 簡介
DOM 操作與事件處理

querySelector 選取元素、innerHTML 修改內容、addEventListener 綁定 click 事件。

querySelectorinnerHTMLaddEventListener
列表目前為空
JS · 04
JAVASCRIPT 簡介
計時器與動態效果

setTimeout 延遲、setInterval 週期重複、clearInterval 停止運作。

setTimeoutsetIntervalclearIntervalrAF
00:00.0
Unit 02 CSS Layout
4 知識點
CSS · 01
CSS LAYOUT
FlexBox

display:flex 讓子元素沿主軸排列,justify-content 控制分佈,align-items 控制對齊。

display:flexjustify-contentalign-itemsflex-wrap
A
BB
CCC
D
CSS · 02
CSS LAYOUT
Grid

display:grid 建立二維網格,grid-template-columns 定義欄寬,gap 設定間距。

display:gridgrid-template-columnsgapfr 單位
1
2
3
4
5
6
CSS · 03
CSS LAYOUT
RWD 響應式設計

@media query 針對不同螢幕寬度套用樣式,搭配 rem / % / vw 等彈性單位。

@mediabreakpointrem · vwmobile-first
Item
Item
Item
CSS · 04
CSS LAYOUT
CSS Animation

@keyframes 定義動畫關鍵影格,animation 屬性控制時長、重複與變換方式。

@keyframesanimationtransitiontransform
CSS
Unit 03 非同步操作與 API 串接
4 知識點
ASYNC · 01
非同步操作與 API 串接
同步與非同步

同步程式碼逐行執行並等待,非同步則將耗時任務(I/O、網路請求)交給瀏覽器背景處理,不阻塞主執行緒,完成後再透過 Event Loop 回傳結果。

同步 sync非同步 asyncevent loopcall stack

模擬同步 vs 非同步的執行順序差異 —— 觀察 log 輸出的先後

點擊按鈕觀察執行順序...
ASYNC · 02
非同步操作與 API 串接
Callback 與 Promise

Callback 是傳入函式的函式,用於非同步完成後執行;Promise 封裝非同步狀態(pending → fulfilled / rejected),鏈式 .then().catch() 取代巢狀 callback,避免 Callback Hell。

callbackPromise.then().catch()pending · fulfilled · rejected

模擬 Promise 鏈式執行 — 觀察各階段狀態變化

① new Promise( executor )
  .then( 處理成功資料 )
  .then( 再次轉換資料 )
  .catch( 捕捉錯誤 )
  .finally( 無論如何執行 )
等待執行...
ASYNC · 03
非同步操作與 API 串接
fetch 與 async/await

fetch() 回傳 Promise,用於發送 HTTP 請求取得資料;async/await 語法讓非同步程式碼讀起來像同步,搭配 try/catch 處理錯誤,大幅提升可讀性。

fetch()async functionawaittry / catchresponse.json()

呼叫公開 API — JSONPlaceholder 隨機取得一位使用者資料

/ 10
輸入 ID (1–10) 後點擊 FETCH...
ASYNC · 04
非同步操作與 API 串接
多個請求與實戰整合

Promise.all() 並行發送多個請求,全部完成才繼續;Promise.allSettled() 不論成功失敗都回傳結果;序列請求(for...of + await)則逐一等待,適合有依賴關係的場景。

Promise.all()Promise.allSettled()並行 parallel序列 sequential

比較「並行」與「序列」請求的完成時序

請求 #1
User /1
請求 #2
User /2
請求 #3
User /3
請求 #4
User /99 ✗
選擇執行模式...