iT邦幫忙

鐵人檔案

2026 iThome 鐵人賽
回列表
JavaScript

React 觀念架構:從js 基礎到Hook 底層邏輯 系列

本系列文章將拆解 React 核心架構,從最根本的 JavaScript 必備觀念(Closure、Event Loop、Immutability)切入,一路向上推進至 React 的核心運作機制。不只教怎麼用 Hook,更要深入 Hook 的底層邏輯,解析 Fiber 架構與 Re-render 的觸發機制,幫你打破迷思,建立清晰且系統化的前端思維體系!

參賽天數 16 天 | 共 16 篇文章 | 0 人訂閱 訂閱系列文 RSS系列文 |團隊nutc imac
DAY 1

Day1 React 是什麼?從 DOM 痛苦時代到「UI 即函數」的核心心智模型

許多初學者在剛接觸 React 時,常會產生一種錯覺:「React 好難,框架語法好多、邏輯好複雜。」 但如果我們靜下心來將 React 剝開,就會發現:Rea...

2026-09-15 ‧ 由 c8763 分享
DAY 2

DAY 2 傳值還是傳址?從記憶體模型看 React 為什麼強調「不可變性 (Immutability)」

我們建立了 UI = f(state) 的心智模型。但許多新手常遇到這個經典問題:「明明修改了 State 裡的物件,畫面為什麼完全沒更新?」答案不在 Reac...

2026-09-16 ‧ 由 c8763 分享
DAY 3

DAY 3 閉包 (Closure) 與作用域鏈:理解 Hook State 歷史紀錄的基石

在昨天我們搞懂了 JS 的記憶體模型與不可變性。今天我們要第二個 JS 觀念:閉包 (Closure)。 一、 什麼是閉包 (Closure)? 簡單來說:「當...

2026-09-17 ‧ 由 c8763 分享
DAY 4

DAY 4 解構賦值與展開運算子:寫出乾淨 State 操作語法的必修課

我們已經理解了 React 的「不可變性」與「閉包」。今天我們要來看兩個在 React 中出現率高達 90% 的 ES6 語法:解構賦值 (Destructur...

2026-09-18 ‧ 由 c8763 分享
DAY 5

DAY 5 Array 高階函數 (map, filter, reduce) 在 JSX 與資料處理中的應用

我們已經學習了如何使用解構與展開運算子優化語法。今天我們要來看 React 開發中最常出現的三個 JavaScript 陣列高階函數:map、filter 與...

2026-09-19 ‧ 由 c8763 分享
DAY 6

Day 06 Promise 與 Async/Await:處理非同步資料流的底層觀念

我們已經學習了陣列高階函數的轉換技巧。今天我們要進入前端開發中最關鍵的課題之一:非同步 (Asynchronous) 資料處理。 不論是呼叫 API 撈取資料、...

2026-09-20 ‧ 由 c8763 分享
DAY 7

Day 07 Event Loop 機制:微任務 (Microtask) 與 React 批次更新

我們已經掌握了 Promise 與 Async/Await 的語法。今天我們要探討 JavaScript 底層執行核心——事件循環 (Event Loop)。...

2026-09-21 ‧ 由 c8763 分享
DAY 8

Day 8 JSX 不是 HTML!揭開 Babel 將 JSX 轉譯為 React.createElement 的面紗

在前面幾天,我們探討了記憶體、閉包、高階函數、非同步與 Event Loop。今天我們要來拆解 React 開發者每天都在寫、卻最容易被誤解的語法——JSX。...

2026-09-22 ‧ 由 c8763 分享
DAY 9

Day 9 Virtual DOM 與 Reconciliation(協調算法):React 憑什麼那麼快?

今天我們要探討 React 最具革命性的核心技術:Virtual DOM(虛擬 DOM) 與 Reconciliation(協調算法)。 一、 真正的效能瓶頸:...

2026-09-23 ‧ 由 c8763 分享
DAY 10

Day 10 Diffing Algorithm 拆解:為什麼列表渲染要給 key?

一、 Diffing 演算法的三大策略 React 的 Reconciliation 演算法能將樹比對的複雜度降至 O(n),全靠以下三大策略: Tree D...

2026-09-24 ‧ 由 c8763 分享