React Native Developer

100+ React Native Developer Interview Questions and Answers

Updated 24 Jan 2025

Q51. How do you maintain code quality

Ans.

Code quality is maintained through code reviews, automated testing, coding standards, and continuous integration.

  • Regular code reviews by peers to catch errors and ensure best practices are followed

  • Implementing automated testing to catch bugs early in the development process

  • Enforcing coding standards and guidelines to maintain consistency and readability

  • Utilizing continuous integration tools to automate the build and testing process

Q52. Diiff between functional and class components

Ans.

Functional components are simple functions that return JSX, while class components are ES6 classes that extend React.Component.

  • Functional components are stateless and do not have access to lifecycle methods.

  • Class components have access to lifecycle methods and can hold state.

  • Functional components are easier to read and test, while class components can be more complex and verbose.

  • Example: Functional component - const MyComponent = () =>

    Hello World
    ; Class component - class MyC...read more

Q53. tell me features of ES6?

Ans.

ES6 is the 6th version of ECMAScript, introducing new features and syntax improvements.

  • Arrow functions for concise syntax: const add = (a, b) => a + b;

  • Let and const for block-scoped variables: let x = 5; const y = 10;

  • Template literals for string interpolation: const name = 'John'; console.log(`Hello, ${name}!`);

  • Classes for object-oriented programming: class Person { constructor(name) { this.name = name; } }

  • Destructuring for easy assignment: const { firstName, lastName } = per...read more

Q54. How to build chat app

Ans.

To build a chat app, you need to create a backend server, choose a database, and implement real-time communication.

  • Choose a backend server such as Node.js or Firebase

  • Select a database such as MongoDB or Firebase Realtime Database

  • Implement real-time communication using WebSockets or Firebase Cloud Messaging

  • Design the user interface and user experience

  • Add features such as push notifications and message encryption

Are these interview questions helpful?

Q55. different between let vs var vs const?

Ans.

let is block scoped, var is function scoped, const is a constant variable.

  • let is block scoped, meaning it is only accessible within the block it is declared in.

  • var is function scoped, meaning it is accessible throughout the function it is declared in.

  • const is a constant variable, its value cannot be reassigned once it is initialized.

Q56. What is context, What is hooks

Ans.

Context is a feature in React that allows data to be passed down the component tree without manually passing props. Hooks are functions that allow you to use state and other React features in functional components.

  • Context is used to share data between components without passing props explicitly

  • Hooks are functions that allow you to use state and other React features in functional components

  • Context provides a way to pass data through the component tree without having to pass pr...read more

Share interview questions and help millions of jobseekers 🌟

man-with-laptop

Q57. Difference between ES5 and ES6

Ans.

ES5 is the older version of JavaScript, while ES6 is the newer version with added features and syntax improvements.

  • ES6 introduced let and const for variable declaration.

  • ES6 introduced arrow functions for shorter syntax.

  • ES6 introduced classes for object-oriented programming.

  • ES6 introduced template literals for easier string interpolation.

  • ES6 introduced destructuring assignment for extracting values from objects and arrays.

  • ES6 introduced modules for better code organization and...read more

Q58. what is function currying

Ans.

Function currying is a technique in functional programming where a function with multiple arguments is transformed into a sequence of nested functions, each taking a single argument.

  • Currying allows you to partially apply a function by fixing a number of arguments, which creates a new function.

  • It helps in creating reusable functions and improves code readability.

  • Example: const add = (a) => (b) => a + b; const add5 = add(5); console.log(add5(3)); // Output: 8

React Native Developer Jobs

React Native Developer 4-9 years
HCLTech
3.5
Noida
React Native Developer 8-13 years
Pricewaterhouse Coopers Private Limited
3.4
Bangalore / Bengaluru
React Native Developer 4-9 years
Tata Consultancy Services
3.7
Bhubaneswar

Q59. Explain steps to Integrate push notifications

Ans.

Integrating push notifications involves setting up a push notification service, configuring the app to receive notifications, and handling notifications in the app.

  • Set up a push notification service like Firebase Cloud Messaging (FCM) or Apple Push Notification Service (APNS)

  • Configure the app to register for push notifications and handle device tokens

  • Implement logic to handle incoming push notifications and display them to the user

  • Test the push notification integration on dif...read more

Q60. Difference between reactnative and flutter?

Ans.

React Native is a framework developed by Facebook for building native mobile apps using JavaScript and React, while Flutter is a UI toolkit developed by Google for building natively compiled applications for mobile, web, and desktop from a single codebase.

  • React Native uses JavaScript and React to build mobile apps, while Flutter uses Dart programming language.

  • React Native uses native components to render UI elements, while Flutter uses its own set of widgets for UI rendering....read more

Q61. difference between var let const?

Ans.

var is function scoped, let and const are block scoped. const cannot be reassigned, let can be reassigned but not redeclared.

  • var is function scoped, let and const are block scoped

  • const cannot be reassigned, let can be reassigned but not redeclared

  • var can be hoisted, let and const are not hoisted

Q62. 4. What is Redux?

Ans.

Redux is a predictable state container for JavaScript apps.

  • Redux is a state management library for JavaScript applications.

  • It provides a centralized store to manage the state of an application.

  • Redux follows a unidirectional data flow pattern.

  • Actions are dispatched to update the state in the store.

  • Reducers are pure functions that update the state based on the dispatched actions.

  • Selectors are used to retrieve data from the store.

  • Redux can be used with React, Angular, Vue, and o...read more

Q63. Diffrence between FlatList and ScrollView

Ans.

FlatList is optimized for rendering large lists efficiently by only rendering the items that are currently visible, while ScrollView renders all of its children at once.

  • FlatList is more performant for long lists as it only renders the items that are currently visible on the screen.

  • ScrollView renders all of its children at once, which can lead to performance issues with large datasets.

  • FlatList supports key extraction for efficient rendering, while ScrollView does not have buil...read more

Q64. what is let var const

Ans.

let, var, and const are keywords used for variable declaration in JavaScript.

  • let is block-scoped and can be reassigned.

  • var is function-scoped and can be reassigned.

  • const is block-scoped and cannot be reassigned, but its value can be mutated.

Q65. what is context api

Ans.

Context API is a feature in React that allows sharing data between components without having to pass props through every level of the component tree.

  • Context API provides a way to pass data through the component tree without having to pass props down manually at every level.

  • It is useful for sharing global data such as themes, user authentication, or language preferences.

  • Context API consists of three main parts: Provider, Consumer, and useContext hook.

  • Example: Using Context API...read more

Q66. what is interval

Ans.

Interval is a time period between two specified points.

  • Interval is a duration of time between two specific points.

  • It can be used in programming to execute a function at regular intervals.

  • For example, setInterval() function in JavaScript is used to repeatedly execute a function at specified intervals.

Q67. what is settimeout

Ans.

setTimeout is a function in JavaScript that executes a specified function or code snippet after a specified delay.

  • setTimeout is used to delay the execution of a function or code snippet.

  • It takes two parameters: a function to be executed and a delay time in milliseconds.

  • Example: setTimeout(() => { console.log('Delayed message') }, 2000) will log 'Delayed message' after 2 seconds.

Q68. Explain Redux and way should used

Ans.

Redux is a predictable state container for JavaScript apps.

  • Centralized state management

  • Predictable state changes with actions and reducers

  • Helps in managing complex state in large applications

  • Can be used with React, Angular, Vue, etc.

  • Example: Actions like 'ADD_TODO' trigger reducers to update state

Q69. Have you ever used hooks?

Ans.

Yes, I have used hooks extensively in my React Native projects.

  • Yes, I have used useState hook to manage component state.

  • Yes, I have used useEffect hook for side effects like data fetching.

  • Yes, I have used custom hooks to reuse logic across components.

Q70. Life Cycle Methods off class components

Ans.

Life cycle methods are special methods in class components that allow developers to run code at specific points in the component's life cycle.

  • componentDidMount() is called after the component has been rendered to the DOM.

  • componentDidUpdate() is called after the component's state or props have been updated.

  • componentWillUnmount() is called before the component is removed from the DOM.

Q71. event loop in javascript, closure

Ans.

Event loop manages the execution of asynchronous code in JavaScript. Closure is a function with access to its parent scope.

  • Event loop is responsible for executing code in the call stack and handling asynchronous tasks in the task queue.

  • Closure is a function that has access to variables in its outer scope, even after the outer function has returned.

  • Example of closure: function outer() { let x = 10; return function inner() { console.log(x); } }

  • Example of event loop: setTimeout(...read more

Q72. Difference between Let, Var, Const

Ans.

Let, Var, and Const are JavaScript keywords used for declaring variables with different scoping rules and mutability.

  • Var has function scope and can be redeclared and reassigned.

  • Let has block scope and can be reassigned but not redeclared.

  • Const has block scope and cannot be reassigned or redeclared.

  • Use const for values that won't change, let for values that will, and var for legacy code or global variables.

Q73. What is lexical scope

Ans.

Lexical scope refers to the visibility of variables within a specific block of code.

  • Variables declared inside a function are only accessible within that function's scope.

  • Nested functions have access to variables declared in their outer function's scope.

  • Lexical scoping allows for closures, where inner functions retain access to outer function's variables even after the outer function has finished executing.

Q74. react native app optimization technique

Ans.

Optimizing a React Native app involves reducing bundle size, improving performance, and enhancing user experience.

  • Use code splitting to reduce initial bundle size

  • Optimize images and assets for smaller file sizes

  • Implement lazy loading for components that are not immediately needed

  • Use PureComponent or memoization for performance optimization

  • Avoid unnecessary re-renders by using shouldComponentUpdate or React.memo

  • Profile and analyze app performance using tools like React DevTool...read more

Q75. recursion function for infinite currying

Ans.

Recursion function to enable infinite currying by returning a function until all arguments are provided.

  • Create a function that takes a single argument and returns a new function that takes the next argument until all arguments are provided.

  • Use recursion to keep returning a new function until all arguments are collected.

  • Once all arguments are collected, execute the original function with all arguments and return the result.

Q76. a*b = 104, possible values of a and b.

Ans.

The possible values of a and b that satisfy the equation a*b = 104.

  • Possible values of a and b are (1, 104) and (104, 1).

  • Factors of 104 are (1, 104), (2, 52), (4, 26), (8, 13).

Q77. Threads of javascript, Architecture

Ans.

Threads of javascript refer to the concept of asynchronous programming in JavaScript. Architecture in this context likely refers to the overall structure and organization of a React Native application.

  • JavaScript is single-threaded, meaning it can only execute one piece of code at a time. Asynchronous programming allows for non-blocking operations, improving performance and user experience.

  • React Native architecture typically follows a component-based structure, where different...read more

Q78. Whats call, bind, apply?

Ans.

call, bind, and apply are methods used to manipulate the context of a function in JavaScript.

  • call - calls a function with a given 'this' value and arguments provided individually.

  • bind - creates a new function that, when called, has its 'this' keyword set to the provided value.

  • apply - calls a function with a given 'this' value and arguments provided as an array.

Q79. What is React Native

Ans.

React Native is a framework for building mobile applications using JavaScript and React.

  • React Native is a cross-platform framework developed by Facebook.

  • It allows developers to build mobile apps using JavaScript and React.

  • It uses native components to render UI elements, resulting in a native-like performance.

  • Code written in React Native can be shared between iOS and Android platforms.

  • It provides a rich set of pre-built components and APIs for faster development.

  • React Native a...read more

Q80. design carousel in react native

Ans.

Designing a carousel in React Native involves creating a horizontal scroll view with swipe functionality.

  • Use ScrollView component with horizontal prop to create the carousel layout.

  • Render multiple items inside the ScrollView to display carousel content.

  • Implement swipe gestures to navigate between carousel items.

  • Consider using libraries like 'react-native-snap-carousel' for additional features and customization.

Q81. Reconclition and how it words

Ans.

Reconciliation is the process of ensuring two sets of records are in agreement.

  • Reconciliation involves comparing financial transactions to ensure accuracy.

  • It is commonly used in accounting to match bank statements with internal records.

  • Reconciliation helps identify discrepancies and errors that need to be resolved.

  • Automated tools like accounting software can streamline the reconciliation process.

Q82. Whats your Expected CTC

Ans.

My expected CTC is based on my experience, skills, and the market rate for React Native Developers.

  • My expected CTC is in line with industry standards for React Native Developers.

  • I have considered my experience, skills, and the responsibilities of the role when determining my expected CTC.

  • I am open to negotiation based on the overall compensation package offered by the company.

Q83. Difference between async and promise

Ans.

Async is a keyword used to define a function that returns a promise. Promises are objects representing the eventual completion or failure of an asynchronous operation.

  • Async functions always return a promise, while promises represent the eventual result of an asynchronous operation.

  • Async functions make it easier to write asynchronous code in a synchronous manner, using the 'await' keyword to pause execution until the promise is resolved.

  • Promises have a 'then' method that allow...read more

Q84. Difference between fetch and axios

Ans.

Fetch is a built-in web API in JavaScript for making HTTP requests, while Axios is a third-party library for the same purpose.

  • Fetch is built into the browser, while Axios is a standalone library that needs to be installed separately.

  • Axios has built-in support for handling request and response interceptors, while Fetch does not.

  • Axios automatically transforms JSON data, while with Fetch you need to manually call the .json() method on the response.

  • Fetch uses Promises for handlin...read more

Q85. which technologies used

Ans.

React Native uses JavaScript, React, and native platform languages like Java or Swift.

  • JavaScript is used for writing the logic of the application.

  • React is used for building the user interface components.

  • Native platform languages like Java or Swift are used for accessing platform-specific APIs and functionalities.

  • Additional technologies like Redux for state management and Expo for development tools can also be used.

Q86. Build a simple calculator

Ans.

A simple calculator built using React Native

  • Create a basic UI with buttons for numbers and operators

  • Implement logic to perform calculations based on user input

  • Display the result of the calculation on the screen

Q87. Life Cycle of React-Native

Ans.

React Native has several life cycle methods that are called at different stages of the component's life.

  • Mounting: constructor(), componentWillMount(), render(), componentDidMount()

  • Updating: componentWillReceiveProps(), shouldComponentUpdate(), componentWillUpdate(), render(), componentDidUpdate()

  • Unmounting: componentWillUnmount()

  • Error Handling: componentDidCatch()

Q88. Local Storage in React-Native

Ans.

Local storage in React Native allows data to be stored on the device for offline use.

  • AsyncStorage is the built-in API for local storage in React Native

  • Data is stored as key-value pairs

  • Data can be retrieved and updated asynchronously

  • Local storage can be used for caching data for offline use

  • Example: AsyncStorage.setItem('key', 'value')

  • Example: AsyncStorage.getItem('key')

Q89. Creation of Custom hook

Ans.

Custom hooks in React Native allow for reusable logic across components.

  • Custom hooks are functions that start with 'use' keyword.

  • They can encapsulate logic like API calls, state management, etc.

  • Example: useFetch custom hook for making API calls.

Q90. async await vs promise

Ans.

async await simplifies asynchronous code compared to promises

  • async await allows writing asynchronous code in a synchronous manner

  • async await makes error handling easier with try-catch blocks

  • async await is more readable and maintainable than chaining promises

Q91. What is virtual dom?

Ans.

Virtual DOM is a lightweight copy of the actual DOM, used for efficient updates in React applications.

  • Virtual DOM is a concept in React where a lightweight copy of the actual DOM is created.

  • It allows React to efficiently update the UI by comparing the virtual DOM with the actual DOM and only making necessary changes.

  • This helps in improving performance by reducing the number of direct manipulations to the actual DOM.

  • For example, when a user interacts with a React component, th...read more

Q92. diff b/w the == and ===

Ans.

The == operator checks for equality, while the === operator checks for strict equality.

  • The == operator performs type coercion before comparing two values, while the === operator does not.

  • Using === is generally considered safer and more predictable in JavaScript.

  • Example: 1 == '1' will return true, but 1 === '1' will return false.

Q93. Lifecycle of react native?

Ans.

React Native has several lifecycle methods that are called at different stages of a component's life.

  • ComponentWillMount: called before rendering, good for initializing state

  • ComponentDidMount: called after rendering, good for API calls and DOM manipulation

  • ComponentWillReceiveProps: called when component receives new props

  • ComponentWillUpdate: called before re-rendering, good for preparing for updates

  • ComponentDidUpdate: called after re-rendering, good for updating the DOM

  • Compone...read more

Q94. What is Promise?

Ans.

Promise is an object representing the eventual completion or failure of an asynchronous operation.

  • Promises are used to handle asynchronous operations in JavaScript.

  • A Promise can be in one of three states: pending, fulfilled, or rejected.

  • Promises can be chained using .then() method to handle success and failure cases.

  • Example: const myPromise = new Promise((resolve, reject) => { ... });

Q95. Custom Reduce method of JS

Ans.

Custom reduce method in JavaScript allows for custom logic to be applied when reducing an array.

  • Custom reduce method can be implemented using a for loop to iterate over the array elements.

  • The custom logic can be defined within the reduce method to perform specific operations on each element.

  • The initial value for the accumulator can be provided as an argument to the custom reduce method.

  • Example: Implementing a custom reduce method to calculate the sum of all elements in an arr...read more

Q96. Explain closusers and currying

Ans.

Closures are functions that have access to their own scope and the scope of their outer function. Currying is the process of converting a function that takes multiple arguments into a sequence of functions that each take a single argument.

  • Closures allow functions to retain access to variables from their containing scope even after the outer function has finished executing.

  • Currying allows for partial application of a function, where some arguments are provided and the function...read more

Q97. What is closure

Ans.

Closure is a function that has access to its own scope, as well as the scope of its outer function.

  • Closure allows a function to access variables from its outer function even after the outer function has finished executing.

  • It helps in maintaining state in functional programming.

  • Example: function outerFunction() { let outerVar = 'I am outer'; return function innerFunction() { console.log(outerVar); }; }

Frequently asked in,

Q98. What is Code push

Ans.

CodePush is a cloud service that enables React Native developers to deploy updates to their apps instantly without going through the app store review process.

  • CodePush allows developers to push updates to their React Native apps directly to users' devices, bypassing the app store.

  • Developers can push bug fixes, new features, and other updates without requiring users to download a new version of the app.

  • CodePush supports A/B testing, targeted rollouts, and rollback capabilities ...read more

Q99. Explain hooks in react

Ans.

Hooks are a new addition in React 16.8 that allow you to use state and other React features without writing a class.

  • Hooks are functions that let you use state and other React features in functional components.

  • useState() is a hook that allows you to add state to functional components.

  • useEffect() is a hook that allows you to perform side effects in functional components.

  • Custom hooks are reusable functions that can contain logic and state.

  • Hooks provide a more concise and readabl...read more

Q100. Await asyn promise diff

Ans.

Await is used to wait for a promise to resolve, while async is used to define an asynchronous function.

  • Await is used inside an async function to pause execution until a promise is settled.

  • Async functions return a promise that resolves with the value returned by the async function.

  • Using async/await can make asynchronous code easier to read and write compared to using callbacks or promises.

Previous
1
2
3
Next
Interview Tips & Stories
Ace your next interview with expert advice and inspiring stories

Interview experiences of popular companies

3.7
 • 10.4k Interviews
3.6
 • 7.5k Interviews
4.0
 • 759 Interviews
3.5
 • 330 Interviews
3.7
 • 261 Interviews
3.5
 • 80 Interviews
2.7
 • 5 Interviews
2.0
 • 1 Interview
View all

Calculate your in-hand salary

Confused about how your in-hand salary is calculated? Enter your annual salary (CTC) and get your in-hand salary

React Native Developer Interview Questions
Share an Interview
Stay ahead in your career. Get AmbitionBox app
qr-code
Helping over 1 Crore job seekers every month in choosing their right fit company
65 L+

Reviews

4 L+

Interviews

4 Cr+

Salaries

1 Cr+

Users/Month

Contribute to help millions

Made with ❤️ in India. Trademarks belong to their respective owners. All rights reserved © 2024 Info Edge (India) Ltd.

Follow us
  • Youtube
  • Instagram
  • LinkedIn
  • Facebook
  • Twitter