P
prepair.app
Start interview →
EnglishУкраїнськаРусскийDeutsch
📱

Junior React Native DeveloperReact Native interview questions

Junior · no experience / under 1 year

React Native interviews move through several layers: core React and JSX, then the mobile-specific parts — navigation, styling with Flexbox, reaching native code through the bridge or JSI — and finally build and release. Below are the questions asked most often, each with a model answer. Junior: core theory, definitions, and simple practical cases.

Try it — no account needed
Preparing your question…

Topics to prepare

Components, props and state
JSX and hooks (useState, useEffect)
Styling with Flexbox
React Navigation and deep linking
The bridge, JSI and the New Architecture (Fabric)
Performance, platform differences and release (Metro, OTA updates)

6 Junior-level questions with answers

1

What is a component in React Native, and what is the difference between a functional and a class component?

Answer

A component is a reusable piece of UI, written as a function (or, historically, a class) that returns JSX describing what should render. Functional components with hooks are the norm now — they read cleaner, avoid this binding issues, and can reuse stateful logic across components via custom hooks in a way class lifecycle methods could not. Class components still work and appear in older codebases, but new code is functional by default.

2

What is the difference between props and state?

Answer

Props come from the parent and the component cannot change them — treat them as read-only input. State belongs to the component itself, created with useState, and changing it triggers a re-render. A button's label is usually a prop; whether a modal is currently open is usually state.

3

What does `useEffect` do?

Answer

It runs a function after the component renders, for anything that is not pure rendering — fetching data, subscribing to an event, setting a timer. The dependency array controls when it re-runs, and returning a cleanup function from it handles unsubscribing before the next run or on unmount. Skipping the dependency array means the effect runs after every single render, which is rarely what is wanted.

4

How do you style a component in React Native?

Answer

With a JS object, usually built via StyleSheet.create({...}) and passed to the style prop — there is no separate CSS file. Layout uses Flexbox by default with flexDirection: 'column', so flex: 1, justifyContent, and alignItems are the properties used most for arranging children. StyleSheet.create also lets React Native validate styles and reference them by ID instead of re-creating an object every render.

5

How do you move between screens with React Navigation?

Answer

Wrap the app in a navigator — a stack navigator for the common push/pop pattern — register each screen with a name, and call navigation.navigate('ScreenName') from inside a screen to move to it. Params travel with the call, navigation.navigate('Details', { id: 5 }), and the target screen reads them back with route.params. Going back uses navigation.goBack() or the platform's own back gesture/button, which the stack navigator wires up automatically.

6

How is React Native different from React for the web?

Answer

There is no DOM and no browser — <View>, <Text>, and <Image> replace <div>, <span>, and <img>, and they render to real native UIKit/Android views instead of HTML elements. Styling is JS objects instead of CSS, there is no className, and browser APIs like localStorage do not exist — React Native has its own equivalents like AsyncStorage. The component model, hooks, and the one-way data flow are otherwise the same mental model as React on the web.

🦎

Reading answers is not enough

In a real interview you speak under pressure. Cam asks these same questions, scores every answer, and shows exactly what to fix.

Practice a Junior React Native Developer interview →
Free · 3 interviews per month

Other levels — React Native Developer

Middle React Native DeveloperSenior React Native DeveloperAll React Native Developer questions

Other specializations

🔍Junior Manual QA🤖Junior QA AutomationJunior Java Backend🐍Junior Python Backend🐘Junior PHP Backend🦫Junior Go Backend🟢Junior Node.js Backend💎Junior Ruby on Rails🟣Junior .NET Backend Developer🔷Junior C++