Junior React Native Developer Interview Questions: Complete Guide

Milad Bonakdar
Author
Master React Native development fundamentals with essential interview questions covering React basics, components, navigation, state management, and mobile-specific concepts for junior developers.
Introduction
React Native enables developers to build native mobile applications using JavaScript and React. With a single codebase, you can create apps for both iOS and Android, making it a powerful choice for cross-platform mobile development.
This guide covers essential interview questions for Junior React Native Developers. We explore React fundamentals, components, hooks, navigation, state management, and mobile-specific concepts to help you prepare for your first React Native developer role.
React Fundamentals (6 Questions)
1. What is React Native and how does it differ from React?
Answer:
- React: JavaScript library for building web user interfaces
- React Native: Framework for building native mobile apps using React
- Key Differences:
- React Native renders to native components (not DOM)
- Uses native APIs instead of web APIs
- Different styling approach (no CSS, uses StyleSheet)
- Platform-specific code for iOS and Android
Rarity: Very Common Difficulty: Easy
2. What are the core components in React Native?
Answer: React Native provides built-in components that map to native UI elements:
- View: Container component (like
divin web) - Text: Display text (all text must be in
Textcomponent) - Image: Display images
- ScrollView: Scrollable container
- TextInput: Text input field
- TouchableOpacity/Pressable: Touchable elements
- FlatList: Efficient list rendering
- Button: Basic button component
Rarity: Very Common Difficulty: Easy
3. Explain the difference between View and ScrollView.
Answer:
- View: Static container. Content beyond screen bounds is not scrollable.
- ScrollView: Scrollable container. Renders all children at once (can be memory-intensive for large lists).
- When to use:
- View: For layouts that fit on screen
- ScrollView: For small amounts of scrollable content
- FlatList: For large lists (renders only visible items)
Rarity: Very Common Difficulty: Easy
4. What are React Hooks and which ones are most commonly used?
Answer: Hooks are functions that let you use state and lifecycle features in functional components.
- Common Hooks:
- useState: Manage component state
- useEffect: Handle side effects (data fetching, subscriptions)
- useContext: Access context values
- useCallback: Memoize functions
- useMemo: Memoize expensive calculations
- useRef: Reference DOM elements or persist values
Rarity: Very Common Difficulty: Easy
5. Explain the useEffect hook and its dependency array.
Answer:
useEffect runs side effects after render. The dependency array controls when it runs:
- No array: Runs after every render
- Empty array
[]: Runs once after initial render - With dependencies
[dep1, dep2]: Runs when dependencies change
Rarity: Very Common Difficulty: Medium
6. What is the Virtual DOM and how does React use it?
Answer: The Virtual DOM is a lightweight JavaScript representation of the actual DOM.
- Process:
- When state changes, React creates a new Virtual DOM tree
- Compares it with the previous Virtual DOM (diffing)
- Calculates minimal changes needed
- Updates only changed parts in the real DOM
- Benefits: Efficient updates, better performance
Rarity: Common Difficulty: Easy
Components & Props (4 Questions)
7. What is the difference between Props and State?
Answer:
- Props:
- Passed from parent to child
- Read-only (immutable)
- Used for component configuration
- State:
- Managed within the component
- Mutable (can be changed)
- Used for dynamic data
Rarity: Very Common Difficulty: Easy
8. What are Functional Components vs Class Components?
Answer:
- Functional Components:
- Simpler syntax
- Use hooks for state and lifecycle
- Preferred in modern React
- Class Components:
- Older approach
- Use
this.stateand lifecycle methods - Still supported but less common
Rarity: Common Difficulty: Easy
9. How do you pass data from child to parent component?
Answer: Use callback functions passed as props.
Rarity: Very Common Difficulty: Easy
10. What is the key prop and why is it important?
Answer:
The key prop helps React identify which items have changed, been added, or removed in lists.
- Purpose: Optimize rendering performance
- Requirements: Must be unique among siblings, stable (don't use index if list can change)
Rarity: Very Common Difficulty: Easy
Styling & Layout (3 Questions)
11. How do you style components in React Native?
Answer: React Native uses JavaScript objects for styling, not CSS.
- StyleSheet API: Create optimized styles
- Inline Styles: Direct style objects (less performant)
- Flexbox: Default layout system
Rarity: Very Common Difficulty: Easy
12. Explain Flexbox in React Native.
Answer: Flexbox is the primary layout system in React Native.
- Main Properties:
- flexDirection:
roworcolumn(default:column) - justifyContent: Align along main axis
- alignItems: Align along cross axis
- flex: Proportional sizing
- flexDirection:
Rarity: Very Common Difficulty: Medium
13. What is the difference between margin and padding?
Answer:
- Padding: Space inside the component (between content and border)
- Margin: Space outside the component (between component and neighbors)
Rarity: Common Difficulty: Easy
Navigation (3 Questions)
14. What is React Navigation and how do you use it?
Answer: React Navigation is the most popular navigation library for React Native.
- Types:
- Stack Navigator: Screen stack (push/pop)
- Tab Navigator: Bottom tabs
- Drawer Navigator: Side drawer menu
Rarity: Very Common Difficulty: Medium
15. How do you pass parameters between screens?
Answer:
Use the navigate function with a second parameter for data.
Rarity: Very Common Difficulty: Easy
16. What are navigation options and how do you customize headers?
Answer: Navigation options control screen appearance and behavior.
Rarity: Common Difficulty: Easy
Data & Storage (4 Questions)
17. How do you fetch data from an API in React Native?
Answer:
Use fetch API or libraries like Axios.
Rarity: Very Common Difficulty: Medium
18. What is AsyncStorage and how do you use it?
Answer: AsyncStorage is a simple, asynchronous key-value storage system for React Native.
- Use Cases: User preferences, tokens, small data
- Not for: Large datasets, complex queries (use SQLite instead)
Rarity: Very Common Difficulty: Easy
19. What is the difference between FlatList and ScrollView?
Answer:
- ScrollView:
- Renders all children at once
- Good for small lists
- Memory intensive for large lists
- FlatList:
- Renders only visible items (lazy loading)
- Efficient for large lists
- Built-in optimizations
Rarity: Very Common Difficulty: Easy
20. How do you handle forms and user input?
Answer: Use controlled components with state.
Rarity: Very Common Difficulty: Medium



