Whether you're preparing for interviews or conducting them, these 15 React questions cover what actually gets asked in 2026. From hooks to performance optimization, with real follow-up questions interviewers use.
01 Topics Covered
Hooks 4
State 2
Performance 2
Patterns 2
Async 2
Testing 1
TypeScript 1
Advanced 1
02 The Questions
Key Points to Cover
useState: simple state, primitive values
useReducer: complex state logic, multiple sub-values
useReducer: when next state depends on previous
useReducer: better for testing (pure reducer function)
Follow-up Question
How would you handle async actions with useReducer?
Key Points to Cover
Missing deps: stale closures, infinite loops
Empty array: runs once on mount
No array: runs every render
Function deps: use useCallback
Follow-up Question
How do you handle object/array dependencies?
Key Points to Cover
useCallback: memoizes functions
useMemo: memoizes values
Both: prevent unnecessary re-renders
Use when passing to memoized children
Follow-up Question
When should you NOT use these hooks?
Key Points to Cover
Extract reusable logic into hooks
Must start with "use"
Can use other hooks inside
Returns state and/or functions
Follow-up Question
How would you add caching? Abort on unmount?
Key Points to Cover
Move state to common parent
Pass state down as props
Pass updater function as prop
Consider context for deep nesting
Follow-up Question
At what point would you reach for global state management?
Key Points to Cover
createContext + Provider pattern
useContext hook to consume
Avoid putting everything in context
Context changes re-render all consumers
Follow-up Question
How do you prevent unnecessary re-renders with context?
Key Points to Cover
Prevents re-render if props unchanged
Shallow comparison by default
Custom comparison function possible
Useless if props always change (new objects)
Follow-up Question
How do you debug if memo is actually working?
Key Points to Cover
Render only visible items
Use react-window or react-virtualized
Calculate visible range from scroll position
Recycle DOM nodes
Follow-up Question
How would you handle variable height items?
Key Points to Cover
Controlled: React owns the state
Uncontrolled: DOM owns the state (useRef)
Controlled: more control, more code
Uncontrolled: simpler, less control
Follow-up Question
When would you choose uncontrolled?
Key Points to Cover
Parent manages state, children render
Context to share state implicitly
Flexible, composable API
Used by Radix, Headless UI
Follow-up Question
How does this compare to render props?
Key Points to Cover
useEffect for side effects
Cleanup: abort controller
Loading/error/data states
Consider React Query or SWR
Follow-up Question
How do you handle race conditions?
Key Points to Cover
Delay API call until typing stops
Cancel previous timeout on new input
useDeferredValue as alternative
Libraries: lodash.debounce, use-debounce
Follow-up Question
What's the difference between debounce and throttle?
Key Points to Cover
React Testing Library + Jest
Test behavior, not implementation
Query by role, label, text
Avoid testing implementation details
Follow-up Question
How do you test async behavior?
Key Points to Cover
interface or type for props
React.FC vs function declaration
React.ReactNode for children
Extend HTML element props
Follow-up Question
How do you type forwardRef components?
Key Points to Cover
Catch errors in component tree
Class components only (currently)
componentDidCatch, getDerivedStateFromError
Show fallback UI instead of crash
Follow-up Question
Why can't functional components be error boundaries?
03 How to Practice
1
Set Up a Coding Environment
Use PlayCode or CodeSandbox to practice. Get comfortable coding React under time pressure.
2
Practice Explaining
Talk out loud while coding. Interviewers want to hear your thinking process, not just see the final code.
3
Time Yourself
Give yourself 15-20 minutes per question. Real interviews have time pressure. Practice working under constraints.
04 FAQ
What React topics are most asked in interviews?
Hooks (useState, useEffect, useCallback, useMemo) are the most common. After that: state management patterns, performance optimization, and practical coding challenges like building small features.
Should I use TypeScript in React interviews?
Yes, if the job requires TypeScript (most modern React positions do). Using it demonstrates you can work in production codebases. If you're unsure, ask the interviewer at the start.
Do I need to know class components?
Basic understanding is helpful (error boundaries require them), but most interviews focus on functional components and hooks. You won't be asked to write class components from scratch in 2026.
Should I memorize these answers?
No. Understand the concepts and practice coding them. Interviewers can tell when answers are memorized. Focus on being able to explain WHY, not just WHAT.
Practice React Interviews in PlayCode
Real React environment with npm packages, TypeScript, and instant preview.