React Interview Questions & Answers
Click :star: if you like the project. Pull Requests are highly appreciated. Follow me @SudheerJonna for technical updates.
Practice 280+ JavaScript coding interview questions in-browser. Built by ex-FAANG interviewers. No AI-generated fluff. No fake reviews. Try GreatFrontEnd → 💡
I recommend this React course to become top 10% at React and this coding interview bootcamp to ace your coding interview and actually get hired.
Note: This repository is specific to ReactJS. Please check JavaScript Interview Questions for core JavaScript questions and Data Structures and Algorithms for DSA-related questions or problems.
Table of Contents
Hide/Show table of contents
| No. | Questions |
| --- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| | **Core React** |
| 1 | [What is React?](#what-is-react) |
| 2 | [What is the history behind React’s evolution?](#what-is-the-history-behind-react-evolution) |
| 3 | [What are the major features of React?](#what-are-the-major-features-of-react) |
| 4 | [What is JSX?](#what-is-jsx) |
| 5 | [What is the difference between an Element and a Component?](#what-is-the-difference-between-an-element-and-a-component) |
| 6 | [How do you create components in React?](#how-to-create-components-in-react) |
| 7 | [When should you use a Class Component over a Function Component?](#when-to-use-a-class-component-over-a-function-component) |
| 8 | [What are Pure Components?](#what-are-pure-components) |
| 9 | [What is state in React?](#what-is-state-in-react) |
| 10 | [What are props in React?](#what-are-props-in-react) |
| 11 | [What is the difference between state and props?](#what-is-the-difference-between-state-and-props) |
| 12 | [What is the difference between HTML and React event handling?](#what-is-the-difference-between-html-and-react-event-handling) |
| 13 | [What are synthetic events in React?](#what-are-synthetic-events-in-react) |
| 14 | [What are inline conditional expressions?](#what-are-inline-conditional-expressions) |
| 15 | [What is the "key" prop and what is its benefit when used in arrays of elements?](#what-is-key-prop-and-what-is-the-benefit-of-using-it-in-arrays-of-elements) |
| 16 | [What is the Virtual DOM?](#what-is-virtual-dom) |
| 17 | [How does the Virtual DOM work?](#how-virtual-dom-works) |
| 18 | [What is the difference between Shadow DOM and Virtual DOM?](#what-is-the-difference-between-shadow-dom-and-virtual-dom) |
| 19 | [What is React Fiber?](#what-is-react-fiber) |
| 20 | [What is the main goal of React Fiber?](#what-is-the-main-goal-of-react-fiber) |
| 21 | [What are controlled components?](#what-are-controlled-components) |
| 22 | [What are uncontrolled components?](#what-are-uncontrolled-components) |
| 23 | [What is the difference between createElement and cloneElement?](#what-is-the-difference-between-createelement-and-cloneelement) |
| 24 | [What is Lifting State Up in React?](#what-is-lifting-state-up-in-react) |
| 25 | [What are Higher-Order Components?](#what-are-higher-order-components) |
| 26 | [What is the children prop?](#what-is-children-prop) |
| 27 | [How do you write comments in React?](#how-to-write-comments-in-react) |
| 28 | [What is reconciliation?](#what-is-reconciliation) |
| 29 | [Does the lazy function support named exports?](#does-the-lazy-function-support-named-exports) |
| 30 | [Why does React use className instead of the class attribute?](#why-react-uses-classname-over-class-attribute) |
| 31 | [What are Fragments?](#what-are-fragments) |
| 32 | [Why are Fragments better than container divs?](#why-fragments-are-better-than-container-divs) |
| 33 | [What are portals in React?](#what-are-portals-in-react) |
| 34 | [What are stateless components?](#what-are-stateless-components)