i
ITC Infotech
Filter interviews by
Dsa question were asked
Question related to profit loss
Event loop is a mechanism in JavaScript that allows for asynchronous operations to be executed in a non-blocking way.
Event loop is responsible for handling asynchronous operations in JavaScript.
It allows for non-blocking execution of code by moving asynchronous tasks to the event queue.
Event loop continuously checks the call stack and the event queue, moving tasks from the queue to the stack when the stack is empty.
Exa...
Closures are functions that have access to their own scope, as well as the scope in which they were defined.
Closures allow functions to access variables from their outer scope even after the outer function has finished executing.
They are commonly used to create private variables in JavaScript.
Closures are created whenever a function is defined within another function.
Top trending discussions
I applied via Approached by Company and was interviewed in Apr 2022. There was 1 interview round.
I applied via Recruitment Consulltant and was interviewed in Mar 2022. There was 1 interview round.
Hoisting is a JavaScript behavior where variable and function declarations are moved to the top of their containing scope.
Hoisting applies to both variable and function declarations.
Variable declarations are hoisted but not their initializations.
Function declarations are fully hoisted, allowing them to be called before they are declared.
Hoisting does not apply to variables declared with let or const.
Hoisting can lead t...
Higher-order functions are functions that take one or more functions as arguments or return a function as their result.
Higher-order functions can be used to create reusable code by abstracting common patterns.
They enable functional programming paradigms like currying and composition.
Examples of higher-order functions in JavaScript include map, filter, and reduce.
var is function scoped, let and const are block scoped.
var can be redeclared and updated within its scope
let can be updated but not redeclared within its scope
const cannot be updated or redeclared once declared
let and const are not hoisted like var
const must be initialized during declaration
Hooks are a feature in React.js that allow developers to use state and other React features in functional components.
Hooks are functions that let you use React features in functional components
They allow you to use state and other React features without writing a class
Hooks provide a way to reuse stateful logic between components
Some commonly used hooks are useState, useEffect, and useContext
I applied via Company Website and was interviewed in Nov 2022. There were 2 interview rounds.
Var is function scoped, let is block scoped. Redux is a predictable state container, Flux is an architecture pattern.
Var can be redeclared and updated within its scope, let cannot be redeclared but can be updated within its scope
Redux has a single store for the entire application, while Flux has multiple stores
Redux uses a unidirectional data flow, while Flux uses a bidirectional data flow
Redux has middleware for handl...
I applied via Company Website and was interviewed in Oct 2023. There were 3 interview rounds.
React offers a component-based architecture, virtual DOM for performance optimization, and a strong community support.
Component-based architecture allows for reusability and easier maintenance of code.
Virtual DOM helps in improving performance by only updating the necessary parts of the actual DOM.
React has a strong community support with a vast ecosystem of libraries and tools available.
React allows for server-side re...
State is mutable and managed within the component, while props are immutable and passed from parent component.
State is managed within the component and can be changed using setState() method
Props are passed from parent component to child component and cannot be changed by the child component
State is used for internal component data management, while props are used for passing data from parent to child components
useReducer is a React hook that manages state changes through a specified reducer function. useContext is a hook that allows access to a context object.
useReducer is used for managing complex state logic in React applications.
It takes in a reducer function and an initial state, and returns the current state and a dispatch function.
Example: const [state, dispatch] = useReducer(reducer, initialState);
useContext is used f...
One way data binding is a unidirectional flow of data from the model to the view in React applications.
Data flows from the model (or source of truth) to the view, but not vice versa.
Changes in the model automatically update the view, but changes in the view do not affect the model.
Helps in maintaining a clear and predictable data flow in React components.
I have used useState, useEffect, useContext, useReducer, and useRef hooks in my projects.
useState - for managing state in functional components
useEffect - for handling side effects in functional components
useContext - for accessing context in functional components
useReducer - for managing complex state logic in functional components
useRef - for accessing DOM elements or storing mutable values
Redux middleware is a function that intercepts actions before they reach the reducer.
Middleware can be used for logging, crash reporting, asynchronous API calls, etc.
It sits between the action dispatch and the reducer.
Examples of popular middleware include redux-thunk and redux-saga.
Git commands for committing, merging code, and resolving merge conflicts
To commit code: git commit -m 'Commit message'
To merge code from a branch: git merge branch_name
To resolve merge conflicts: manually edit the conflicting files, add changes, and then commit the merge
It's 10 multiple-choice question with low,medium, and difficult range levels.
I applied via Walk-in and was interviewed in Jan 2024. There was 1 interview round.
I applied via LinkedIn and was interviewed in Oct 2024. There was 1 interview round.
React offers advantages such as virtual DOM for improved performance, reusable components, and easy integration with other libraries.
Virtual DOM for efficient updates and improved performance
Reusable components for easier development and maintenance
Easy integration with other libraries like Redux for state management
Support for server-side rendering for better SEO performance
Performance optimization in React Js can be achieved through code splitting, memoization, virtualization, and minimizing re-renders.
Implement code splitting to load only necessary components when needed
Use memoization techniques like useMemo and useCallback to prevent unnecessary re-renders
Implement virtualization for long lists or tables to render only visible items
Minimize re-renders by using shouldComponentUpdate or
useMemo and useCallback are hooks in React used for optimizing performance by memoizing values and functions respectively.
useMemo is used to memoize the result of a function so that it is only recomputed when its dependencies change.
useCallback is used to memoize a function instance so that it is not recreated on every render unless its dependencies change.
Both hooks help in optimizing performance by preventing unneces...
I applied via Recruitment Consulltant and was interviewed in Oct 2024. There were 2 interview rounds.
DOM tree is a hierarchical representation of HTML elements in a web page.
DOM stands for Document Object Model.
It is a tree-like structure where each node represents an HTML element.
The DOM tree is created by the browser when a web page is loaded.
It allows JavaScript to manipulate the content, structure, and style of a web page.
Props are immutable and passed from parent component, while state is mutable and managed within the component.
Props are read-only and cannot be modified by the component receiving them.
State is mutable and can be changed by the component that owns it.
Props are passed from parent to child components, while state is managed within the component itself.
Example: Props can be used to pass data from a parent component to a c...
Redux is a predictable state container for JavaScript apps. It is used to manage application state in a centralized way.
Use Redux when you have complex state management needs in your application.
Redux is helpful for large applications with many components that need access to the same state.
Avoid using Redux for simple applications with minimal state management requirements.
Consider using React's built-in state manageme...
Remove elements from source array present in another array passed to a function
Loop through elements in source array and check if they exist in the other array
If an element is found in both arrays, remove it from the source array
DOM tree is a hierarchical representation of HTML elements in a web page.
DOM stands for Document Object Model
It is a tree-like structure where each node represents an HTML element
The root node is the element, followed by
and elementsNodes can have parent-child relationships, siblings, and descendants
JavaScript can manipulate the DOM to dynamically update the content and structure of a web page
React lifecycle methods are methods that are invoked at different stages of a component's life cycle.
Some lifecycle methods include componentDidMount, componentDidUpdate, componentWillUnmount, etc.
In functional components, we can achieve similar functionality using useEffect hook.
For example, useEffect with an empty dependency array can mimic componentDidMount, while useEffect with dependencies can mimic componentDidUp
Redux is a predictable state container for JavaScript apps.
Redux is a state management library commonly used with React.
It helps in managing the state of the application in a predictable way.
Redux follows a unidirectional data flow architecture.
Actions are dispatched to update the state, which is stored in a single immutable state tree.
Reducers are pure functions that specify how the state should change in response to
The 'any' type in TypeScript is used when the type of a variable is not known during development.
Use 'any' when working with dynamic data types or when the type cannot be determined at compile time.
Avoid using 'any' as much as possible to maintain type safety and improve code quality.
Consider using 'unknown' type instead of 'any' for better type checking and error prevention.
Checklist for improving performance of React application
Use React.memo or PureComponent for optimizing rendering
Avoid unnecessary re-renders by using shouldComponentUpdate or React.memo
Use code splitting to load only necessary components
Optimize state management with libraries like Redux or Context API
Minimize the use of inline styles and prefer CSS stylesheets for better performance
based on 2 interviews
Interview experience
Associate Information Technology Consultant
5.1k
salaries
| ₹3.8 L/yr - ₹15 L/yr |
Lead Consultant
4.5k
salaries
| ₹9 L/yr - ₹35 L/yr |
Associate Consultant
906
salaries
| ₹2.5 L/yr - ₹17.5 L/yr |
Software Engineer
501
salaries
| ₹3.5 L/yr - ₹14.1 L/yr |
Senior Software Engineer
385
salaries
| ₹6.5 L/yr - ₹25.5 L/yr |
Wipro
EPAM Systems
L&T Technology Services
Coforge