1. What is React?
2. What are the major features of React?
3. What is JSX?
4. What is the difference between Element and Component?
5. How to create components in React?
6. When to use a Class Component over a Function Component?
7. What are Pure Components?
8. What is state in React?
9. What are props in React?
10. What is the difference between state and props?
11. Why should we not update the state directly?
12. What is the purpose of callback function as an argument of `setState()`?
13. What is the difference between HTML and React event handling?
14. How to bind methods or event handlers in JSX callbacks?
15. How to pass a parameter to an event handler or callback?
16. What are synthetic events in React?
17. What are inline conditional expressions?
18. What is "key" prop and what is the benefit of using it in arrays of elements?
19. What is the use of refs?
20. How to create refs?
21. What are forward refs?
22. Which is preferred option with in callback refs and findDOMNode()?
23. Why are String Refs legacy?
24. What is Virtual DOM?
25. How Virtual DOM works?
26. What is the difference between Shadow DOM and Virtual DOM?
27. What is React Fiber?
28. What is the main goal of React Fiber?
29. What are controlled components?
30. What are uncontrolled components?
31. What is the difference between createElement and cloneElement?
32. What is Lifting State Up in React?
33. What are the different phases of component lifecycle?
34. What are the lifecycle methods of React?
35. What are Higher-Order Components?
36. How to create props proxy for HOC component?
37. What is context?
38. What is children prop?
39. How to write comments in React?
40. What is the purpose of using super constructor with props argument?
41. What is reconciliation?
42. How to set state with a dynamic key name?
43. What would be the common mistake of function being called every time the component renders?
44. Is lazy function supports named exports?
45. Why React uses `className` over `class` attribute?
46. What are fragments?
47. Why fragments are better than container divs?
48. What are portals in React?
49. What are stateless components?
50. What are stateful components?
51. How to apply validation on props in React?
52. What are the advantages of React?
53. What are the limitations of React?
54. What are error boundaries in React v16?
55. How error boundaries handled in React v15?
56. What are the recommended ways for static type checking?
57. What is the use of `react-dom` package?
58. What is the purpose of render method of `react-dom`?
59. What is ReactDOMServer?
60. How to use innerHTML in React?
61. How to use styles in React?
62. How events are different in React?
63. What will happen if you use `setState()` in constructor?
64. What is the impact of indexes as keys?
65. Is it good to use `setState()` in `componentWillMount()` method?
66. What will happen if you use props in initial state?
67. How do you conditionally render components?
68. Why we need to be careful when spreading props on DOM elements?
69. How you use decorators in React?
70. How do you memoize a component?
71. How you implement Server Side Rendering or SSR?
72. How to enable production mode in React?
73. What is CRA and its benefits?
74. What is the lifecycle methods order in mounting?
75. What are the lifecycle methods going to be deprecated in React v16?
76. What is the purpose of `getDerivedStateFromProps()` lifecycle method?
77. What is the purpose of `getSnapshotBeforeUpdate()` lifecycle method?
78. Do Hooks replace render props and higher order components?
79. What is the recommended way for naming components?
80. What is the recommended ordering of methods in component class?
81. What is a switching component?
82. Why we need to pass a function to setState()?
83. What is strict mode in React?
84. What are React Mixins?
85. Why is `isMounted()` an anti-pattern and what is the proper solution?
86. What are the Pointer Events supported in React?
87. Why should component names start with capital letter?
88. Are custom DOM attributes supported in React v16?
89. What is the difference between constructor and getInitialState?
90. Can you force a component to re-render without calling setState?
91. What is the difference between `super()` and `super(props)` in React using ES6 classes?
92. How to loop inside JSX?
93. How do you access props in attribute quotes?
94. What is React proptype array with shape?
95. How to conditionally apply class attributes?
96. What is the difference between React and ReactDOM?
97. Why ReactDOM is separated from React?
98. How to use React label element?
99. How to combine multiple inline style objects?
100. How to re-render the view when the browser is resized?
101. What is the difference between `setState()` and `replaceState()` methods?
102. How to listen to state changes?
103. What is the recommended approach of removing an array element in React state?
104. Is it possible to use React without rendering HTML?
105. How to pretty print JSON with React?
106. Why you can't update props in React?
107. How to focus an input element on page load?
108. What are the possible ways of updating objects in state?
109. How can we find the version of React at runtime in the browser?
110. What are the approaches to include polyfills in your `create-react-app`?
111. How to use https instead of http in create-react-app?
112. How to avoid using relative path imports in create-react-app?
113. How to add Google Analytics for React Router?
114. How to update a component every second?
115. How do you apply vendor prefixes to inline styles in React?
116. How to import and export components using React and ES6?
117. Why is a component constructor called only once?
118. How to define constants in React?
119. How to programmatically trigger click event in React?
120. Is it possible to use async/await in plain React?
121. What are the common folder structures for React?
122. What are the popular packages for animation?
123. What is the benefit of styles modules?
124. What are the popular React-specific linters?
125. How to make AJAX call and in which component lifecycle methods should I make an AJAX call?
126. What are render props?
127. How React Router is different from history library?
128. What are the `<Router>` components of React Router v4?
129. What is the purpose of `push()` and `replace()` methods of `history`?
130. How do you programmatically navigate using React Router v4?
131. How to get query parameters in React Router v4?
132. Why you get "Router may have only one child element" warning?
133. How to pass params to `history.push` method in React Router v4?
134. How to implement _default_ or _NotFound_ page?
135. How to get history on React Router v4?
136. How to perform automatic redirect after login?
137. What are the main features of React Intl?
138. What are the two ways of formatting in React Intl?
139. How to use `<FormattedMessage>` as placeholder using React Intl?
140. How to access current locale with React Intl?
141. How to format date using React Intl?
142. What is `TestRenderer` package in React?
143. What is the purpose of ReactTestUtils package?
144. What is Jest?
145. What are the advantages of Jest over Jasmine?
146. Give a simple example of Jest test case
147. What is Redux?
148. What are the core principles of Redux?
149. What are the downsides of Redux compared to Flux?
150. What is the difference between `mapStateToProps()` and `mapDispatchToProps()`?
151. Can I dispatch an action in reducer?
152. How to access Redux store outside a component?
153. What are the drawbacks of MVW pattern?
154. Are there any similarities between Redux and RxJS?
155. How to dispatch an action on load?
156. How to use `connect()` from React Redux?
157. How to reset state in Redux?
158. Whats the purpose of `at` symbol in the Redux connect decorator?
159. What is the difference between React context and React Redux?
160. Why are Redux state functions called reducers?
161. How to make AJAX request in Redux?
162. Should I keep all component's state in Redux store?
163. What is the proper way to access Redux store?
164. What is the difference between component and container in React Redux?
165. What is the purpose of the constants in Redux?
166. What are the different ways to write `mapDispatchToProps()`?
167. What is the use of the `ownProps` parameter in `mapStateToProps()` and `mapDispatchToProps()`?
168. How to structure Redux top level directories?
169. What is redux-saga?
170. What is the mental model of redux-saga?
171. What are the differences between `call()` and `put()` in redux-saga?
172. What is Redux Thunk?
173. What are the differences between `redux-saga` and `redux-thunk`?
174. What is Redux DevTools?
175. What are the features of Redux DevTools?
176. What are Redux selectors and why to use them?
177. What is Redux Form?
178. What are the main features of Redux Form?
179. How to add multiple middlewares to Redux?
180. How to set initial state in Redux?
181. How Relay is different from Redux?
182. What is the difference between React Native and React?
183. How to test React Native apps?
184. How to do logging in React Native?
185. How to debug your React Native?
186. What is Flow?
187. What is the difference between Flow and PropTypes?
188. How to use Font Awesome icons in React?
189. What is React Dev Tools?
190. Why is DevTools not loading in Chrome for local files?
191. How to use Polymer in React?
192. What are the advantages of React over Vue.js?
193. What is the difference between React and Angular?
194. Why React tab is not showing up in DevTools?
195. What are Styled Components?
196. Give an example of Styled Components?
197. What is Relay?
198. How to use TypeScript in `create-react-app` application?
199. Does the statics object work with ES6 classes in React?
200. Can Redux only be used with React?
201. Do you need to have a particular build tool to use Redux?
202. How Redux Form `initialValues` get updated from state?
203. How React PropTypes allow different types for one prop?
204. Can I import an SVG file as react component?
205. Why are inline ref callbacks or functions not recommended?
206. What is render hijacking in react?
207. What are HOC factory implementations?
208. How to pass numbers to React component?
209. Do I need to keep all my state into Redux? Should I ever use react internal state?
210. What is the purpose of registerServiceWorker in React?
211. What is React memo function?
212. What is React lazy function?
213. How to prevent unnecessary updates using setState?
214. How do you render Array, Strings and Numbers in React 16 Version?
215. How to use class field declarations syntax in React classes?
216. What are hooks?
217. What are the rules needs to follow for hooks?
218. How to ensure hooks followed the rules in your project?
219. What are the differences between Flux and Redux?
220. What are the benefits of React Router V4?
221. Can you describe about componentDidCatch lifecycle method signature?
222. In which scenarios error boundaries do not catch errors?
223. Why do not you need error boundaries for event handlers?
224. What is the difference between try catch block and error boundaries?
225. What is the behavior of uncaught errors in react 16?
226. What is the proper placement for error boundaries?
227. What is the benefit of component stack trace from error boundary?
228. What is the required method to be defined for a class component?
229. What are the possible return types of render method?
230. What is the main purpose of constructor?
231. Is it mandatory to define constructor for React component?
232. What are default props?
233. Why should not call setState in componentWillUnmount?
234. What is the purpose of getDerivedStateFromError?
235. What is the methods order when component re-rendered?
236. What are the methods invoked during error handling?
237. What is the purpose of displayName class property?
238. What is the browser support for react applications?
239. What is the purpose of unmountComponentAtNode method?
240. What is code-splitting?
241. What is the benefit of strict mode?
242. What are Keyed Fragments?
243. Does React support all HTML attributes?
244. What are the limitations with HOCs?
245. How to debug forwardRefs in DevTools?
246. When component props defaults to true?
247. What is NextJS and major features of it?
248. How do you pass an event handler to a component?
249. Is it good to use arrow functions in render methods?
250. How to prevent a function from being called multiple times?
251. How JSX prevents Injection Attacks?
252. How do you update rendered elements?
253. How do you say that props are read only?
254. How do you say that state updates are merged?
255. How do you pass arguments to an event handler?
256. How to prevent component from rendering?
257. What are the conditions to safely use the index as a key?
258. Is it keys should be globally unique?
259. What is the popular choice for form handling?
260. What are the advantages of formik over redux form library?
261. Why do you not required to use inheritance?
262. Can I use web components in react application?
263. What is dynamic import?
264. What are loadable components?
265. What is suspense component?
266. What is route based code splitting?
267. Give an example on How to use context?
268. What is the purpose of default value in context?
269. How do you use contextType?
270. What is a consumer?
271. How do you solve performance corner cases while using context?
272. What is the purpose of forward ref in HOCs?
273. Is it ref argument available for all functions or class components?
274. Why do you need additional care for component libraries while using forward refs?
275. How to create react class components without ES6?
276. Is it possible to use react without JSX?
277. What is diffing algorithm?
278. What are the rules covered by diffing algorithm?
279. When do you need to use refs?
280. Is it prop must be named as render for render props?
281. What are the problems of using render props with pure components?
282. How do you create HOC using render props?
283. What is windowing technique?
284. How do you print falsy values in JSX?
285. What is the typical use case of portals?
286. How do you set default value for uncontrolled component?
287. What is your favorite React stack?
288. What is the difference between Real DOM and Virtual DOM?
289. How to add Bootstrap to a react application?
290. Can you list down top websites or applications using react as front end framework?
291. Is it recommended to use CSS In JS technique in React?
292. Do I need to rewrite all my class components with hooks?
293. How to fetch data with React Hooks?
294. Is Hooks cover all use cases for classes?
295. What is the stable release for hooks support?
296. Why do we use array destructuring (square brackets notation) in `useState`?
297. What are the sources used for introducing hooks?
298. How do you access imperative API of web components?
299. What is formik?
300. What are typical middleware choices for handling asynchronous calls in Redux?
301. Do browsers understand JSX code?
302. Describe about data flow in react?
303. What is react scripts?
304. What are the features of create react app?
305. What is the purpose of renderToNodeStream method?
306. What is MobX?
307. What are the differences between Redux and MobX?
308. Should I learn ES6 before learning ReactJS?
309. What is Concurrent Rendering?
310. What is the difference between async mode and concurrent mode?
312. What is the purpose of eslint plugin for hooks?
313. What is the difference between Imperative and Declarative in React?
314. What are the benefits of using typescript with reactjs?
315. How do you make sure that user remains authenticated on page refresh while using Context API State Management?
316. What are the benefits of new JSX transform?
317. How does new JSX transform different from old transform?
What are the popular packages for animation?
React Transition Group
are popular animation packages in React ecosystem.