Skip to main content
Journey Uncommon Logo
JourneyUncommon

React Interview Questions (536 to practise)

React is the dominant way to build user interfaces on the web. The hard parts are re-render timing, identity, and effect cleanup.

Hook rules, stale closures inside effects, key-based reconciliation, when memo actually helps, and how server components change where code runs.

Total questions
536
Easy
120
Medium
218
Hard
198

Where it shows up: Frontend and full-stack roles, plus React Native mobile teams that share the same mental model.

Sample React questions

Twenty real React questions from the library, code snippet included. Nothing here is paraphrased for search engines. It is the same text a signed-in user sees.

hardconcurrent rendering tearing

You wrap a state update that filters a large list in `startTransition`. A separate input's `onChange` calls `setText` outside the transition. Under concurrent rendering, why does typing stay responsive, and what is the precise relationship between the urgent `setText` update and the in-progress transition render that explains it?

function handleChange(e) {
  setText(e.target.value);            // urgent
  startTransition(() => {
    setFilter(e.target.value);        // transition (low priority)
  });
}
Read the full question →
Sign in to answer

Everything above is free to read. Answering needs a free account.

We keep the correct answer, the explanation and the scoring behind sign-in so the platform stays honest, which is why the answer options and the worked explanation for every React question stay behind a free account. Signing in is free and takes a few seconds.

React topics covered

42 distinct React topics are tagged across the library. These are the real topic labels stored on the questions, not a hand-written list.

  • useEffect dependency arrays (26)
  • function components (24)
  • what JSX is (22)
  • embedding expressions (21)
  • custom hooks (19)
  • reconciliation diffing (19)
  • lazy and Suspense (19)
  • context and useContext (18)
  • concurrent rendering tearing (16)
  • forwardRef (15)
  • controlled vs uncontrolled (14)
  • useReducer (14)
  • Server Components use client (14)
  • fiber and lane priorities (14)
  • render vs commit phase (14)
  • React Router v6 (13)
  • hydration mismatches (12)
  • React.memo bailout (12)
  • bundler internals webpack vite (12)
  • Server Actions (12)
  • props read-only (11)
  • useMemo (11)
  • useCallback (11)
  • useEffect vs useLayoutEffect timing (10)
  • derived vs stored state (10)
  • StrictMode double-invoke (10)
  • automatic batching (9)
  • stale-closure pitfalls (9)
  • lifting state up (9)
  • useSyncExternalStore (9)
  • error boundaries (8)
  • render bailout Object.is (8)
  • use() in render (8)
  • className htmlFor (8)
  • flushSync (8)
  • the Scheduler (8)
  • global state Zustand Redux (8)
  • recursion in components (8)
  • portals (6)
  • infinite virtualized lists (6)
  • worker threads (6)
  • define_method (1)

Search and filter every React question

Difficulty