30 天,帶你從 TypeScript 零基礎一路闖關,打怪升級到型別大師!內容涵蓋基礎語法、泛型、型別守衛等進階技巧,最後再挑戰 React、Node.js 實戰專案。每天一點進步,累積下來就是翻天覆地的改變,讓你從此看型別不再心慌,重構不再冒冷汗。
在前面幾天,我們一直有用到一些工具型別(例如 Pick<User, "id" | "name">), 今天來...
1) 為什麼需要型別守衛? TS 的型別推論雖然很聰明,但在以下情境會「卡住」: ts CopyEdit type ApiResult = User | Api...
1) 引言:為什麼要泛型? 在 JavaScript 裡,我們常常會寫一些「通用」的函式,例如: ts CopyEdit function first(arr)...
1) 引言:型別也能做邏輯判斷? 在程式裡,我們經常會依條件來決定邏輯分支: ts CopyEdit if (isLoggedIn) { ... } else...
1) 引言:為什麼需要映射型別? 假設我們有一個型別: ts CopyEdit type User = { id: string; name: stri...
1) 引言:為什麼需要 Template Literal Types? 在 JavaScript 裡,我們可以用模板字串: ts CopyEdit const...
1) 引言:為什麼要「型別驅動」? 在前端專案裡,表單開發很常見,但有幾個痛點: 欄位定義重複:資料模型、表單 UI、驗證規則常常要寫三遍 型別不同步:改...
1) 引言:事件系統的痛點 在前端開發中,我們常常會定義事件系統,例如: ts CopyEdit emitter.on("userCreated&qu...
1) 引言:為什麼要型別驅動? 前端呼叫 API 常見痛點: 路徑拼錯:/api/user vs /api/users 參數型別錯:id 給了 number...
今天不只回顧 30 天的內容,我會把「設計心法 → 專案落地檢查清單 → 升級路線」一次給齊。 你可以拿這篇當 團隊 Onboarding 指南,也能當自己做專...