React Interview Questions: Shallow Comparison, Strict Mode & Stale Closures

🚀 3 Tricky React Interview Questions Asked in Top Companies These are NOT your typical “what is useState?” questions. These are the ones that actually test your real understanding of React 👇 ⸻ 1️⃣ Why does a component re-render even with React.memo? You wrapped a child with React.memo. Props look the same… but it still re-renders. 👉 Reason: React.memo does shallow comparison 👉 Objects, arrays, and functions create new references every render 💡 Fix: Use useMemo / useCallback to stabilize references ⸻ 2️⃣ Why is useEffect running twice in development? You used an empty dependency array, still it runs twice 🤯 👉 This is NOT a bug 👉 It’s React Strict Mode (React 18+) 💡 React intentionally mounts → unmounts → mounts again to detect side effects & bugs early ✅ Happens only in development, not in production ⸻ 3️⃣ Why is state not updating inside async functions? You update state, but inside setTimeout or async code it still shows the old value 😵 👉 Reason: Stale closures (JavaScript behavior) 💡 Fix: ✔️ Use functional updates → setState(prev => prev + 1) ✔️ Or useRef for latest value ⸻ 🎯 Interview Tip: Use these keywords to stand out: ✔️ Shallow comparison ✔️ Reference equality ✔️ Strict Mode behavior ✔️ Stale closures #ReactJS #FrontendDeveloper #WebDevelopment #JavaScript #InterviewPrep #ReactInterview #Coding #interview #prepration #Developer

To view or add a comment, sign in

Explore content categories