All interview guides

React Native Interview Questions and Answers

24 questions that come up in React Native technical interviews, each with the answer and an explanation of why it is right.

Test yourself — 90 question bank

1. What is a Native Module?

Advanced

Answer: Bridge connecting JavaScript to native code

Native Modules bridge JavaScript and native code (Java/Kotlin for Android, Objective-C/Swift for iOS). Access platform APIs not exposed to JavaScript.

2. What is React Navigation?

Intermediate

Answer: Navigation library for routing and navigation

React Navigation is the most popular navigation library for React Native. Provides stack, tab, drawer navigation and more.

3. What is React Native?

Beginner

Answer: Framework for building mobile apps using React

React Native is a framework developed by Facebook for building native mobile applications using React and JavaScript. Write once, run on iOS and Android.

4. How do you create a Native Module?

Advanced

Answer: Write native code and register with React Native bridge

Create native code (Java/Kotlin/ObjC/Swift), implement required methods, register with React Native bridge. Expose to JavaScript via NativeModules.

5. What is Stack Navigator?

Intermediate

Answer: Manages screen stack with push/pop transitions

Stack Navigator manages screen history as a stack. Push new screens, pop to go back. Provides native transitions and gestures.

6. What language is primarily used in React Native?

Beginner

Answer: JavaScript/TypeScript

React Native primarily uses JavaScript or TypeScript. The code is then compiled to native components for iOS and Android.

7. How do you create a new React Native project?

Beginner

Answer: All of the above

Multiple ways: npx react-native init (bare React Native), expo init (Expo framework), or npx create-expo-app. Each has different use cases.

8. What is Turbo Modules?

Advanced

Answer: New native module system with better performance

Turbo Modules is the new native module system in React Native. Lazy loading, better type safety, improved performance. Part of new architecture.

9. What is the useState hook?

Intermediate

Answer: Hook for managing component state

useState is a React hook for managing component state. Returns current state and setter function: const [state, setState] = useState(initialValue).

10. What is Fabric?

Advanced

Answer: New rendering system for React Native

Fabric is the new rendering system replacing the old bridge. Enables concurrent features, better performance, and synchronous layout. Part of new architecture.

11. What is the difference between React and React Native?

Beginner

Answer: React is for web, React Native is for mobile

React is for building web applications using HTML/CSS. React Native is for building mobile applications using native components.

12. What is JSI (JavaScript Interface)?

Advanced

Answer: Allows direct JavaScript-native communication

JSI allows JavaScript to directly invoke native code without bridge serialization. Foundation of Turbo Modules and Fabric. Much faster than old bridge.

13. What is the useEffect hook?

Intermediate

Answer: Hook for side effects like data fetching

useEffect handles side effects (data fetching, subscriptions, DOM updates). Runs after render. Use dependency array to control when it runs.

14. What is the View component?

Beginner

Answer: Container component like div in web

View is the most fundamental component, similar to div in web. It is a container that supports layout, styling, touch handling, and accessibility.

15. What is the useContext hook?

Intermediate

Answer: Accesses context values without Consumer

useContext accesses context values without Consumer component. Cleaner syntax: const value = useContext(MyContext). For sharing global state.

16. What is the Text component?

Beginner

Answer: Component for displaying text

Text component displays text content. All text must be wrapped in Text component. Supports styling, nesting, and touch handling.

17. What is Hermes?

Advanced

Answer: JavaScript engine optimized for React Native

Hermes is JavaScript engine optimized for React Native. Reduces app size, improves startup time, lowers memory usage. Developed by Facebook.

18. How do you style components in React Native?

Beginner

Answer: Both b and c

Use StyleSheet.create() for performance or inline style objects. No CSS files. Styles use JavaScript objects with camelCase properties.

19. What is AsyncStorage?

Intermediate

Answer: Persistent key-value storage for mobile

AsyncStorage provides persistent, asynchronous key-value storage. Like localStorage but async. Use @react-native-async-storage/async-storage package.

20. What is CodePush?

Advanced

Answer: OTA updates without app store approval

CodePush enables over-the-air updates for JavaScript/assets without app store approval. By Microsoft App Center. Quick bug fixes and feature updates.

21. What is StyleSheet.create()?

Beginner

Answer: Creates optimized style objects

StyleSheet.create() creates optimized style objects. Validates styles, provides better performance than inline styles, and enables style reuse.

22. What is performance optimization in React Native?

Advanced

Answer: Use FlatList, optimize images, minimize re-renders, use native driver

Optimize performance: use FlatList for lists, optimize images (size, caching), memo/useCallback to minimize re-renders, use native driver for animations, Hermes engine.

23. What is the Animated API?

Intermediate

Answer: Built-in library for creating smooth animations

Animated API creates smooth, performant animations. Use Animated.Value, Animated.timing(), Animated.spring(). Supports native driver for better performance.

24. What is the LayoutAnimation API?

Intermediate

Answer: Animates layout changes automatically

LayoutAnimation automatically animates layout changes. Call LayoutAnimation.configureNext() before setState. Simple but less control than Animated.

Ready to test yourself?

The full React Native bank has 90 questions across 3 difficulty levels — timed, shuffled, and scored.

Take the React Native quiz