💡React Interview Question💡 Why do we always use useState, useRef, useReducer hook to store any information in the functional component instead of using normal variables? Answer: Whenever we create a React functional component, React behind the scenes creates a JavaScript function, and uses bind method to pass the props as arguments for each component like this: const User = User.bind(null, { userId: 10, username: 'Mike' }) Here, because of the bind method so we can re-use that component later multiple times with different props like this: <User userId={10} username="Mike" /> <User userId={12} username="Jerry" /> And because 𝗨𝘀𝗲𝗿 component is converted to a JavaScript function, each time you call that function, all the local variables, event handlers declared in the component will be re-created on every function call/re-render of the component. That's the reason we use hooks like 𝘂𝘀𝗲𝗦𝘁𝗮𝘁𝗲, 𝘂𝘀𝗲𝗥𝗲𝗱𝘂𝗰𝗲𝗿 or 𝘂𝘀𝗲𝗥𝗲𝗳 to store the values inside the component to retain the values across multiple re-renders. Even though we declare state or ref in a component, state or ref value is actually stored outside the component linked to that particular component, that's why we don't loose its value during re-render. If we declare a local variable 𝗰𝗼𝘂𝗻𝘁𝗲𝗿 along with the 𝘂𝘀𝗲𝗦𝘁𝗮𝘁𝗲 hook inside a 𝗨𝘀𝗲𝗿 component like this: 𝘧𝘶𝘯𝘤𝘵𝘪𝘰𝘯 𝘜𝘴𝘦𝘳() { 𝘤𝘰𝘯𝘴𝘵 [𝘶𝘴𝘦𝘳, 𝘴𝘦𝘵𝘜𝘴𝘦𝘳] = 𝘶𝘴𝘦𝘚𝘵𝘢𝘵𝘦(𝘯𝘶𝘭𝘭); 𝘤𝘰𝘯𝘴𝘵 𝘤𝘰𝘶𝘯𝘵𝘦𝘳 = 𝟣𝟢; 𝘤𝘰𝘯𝘴𝘵 𝘩𝘢𝘯𝘥𝘭𝘦𝘊𝘭𝘪𝘤𝘬 = (𝘦𝘷𝘦𝘯𝘵) => { // 𝘴𝘰𝘮𝘦 𝘤𝘰𝘥𝘦 } // 𝘴𝘰𝘮𝘦 𝘑𝘚𝘟 } then the 𝗰𝗼𝘂𝗻𝘁𝗲𝗿 variable and 𝗵𝗮𝗻𝗱𝗹𝗲𝗖𝗹𝗶𝗰𝗸 method will be re-created on every re-render of the 𝗨𝘀𝗲𝗿 component so 𝗰𝗼𝘂𝗻𝘁𝗲𝗿 variable value will be reset to 𝟭𝟬 on every re-render of the component, but the 𝘂𝘀𝗲𝗿 state will maintain its previous value across multiple re-render of the 𝗨𝘀𝗲𝗿 component and it 𝘄𝗶𝗹𝗹 𝗻𝗼𝘁 𝗯𝗲 re-initialized to null on re-render. Because even though the state is declared inside a component, React actually stores the state information outside the component so as to not lose its value during re-render. 𝗙𝗼𝗿 𝗺𝗼𝗿𝗲 𝘀𝘂𝗰𝗵 𝘂𝘀𝗲𝗳𝘂𝗹 𝗰𝗼𝗻𝘁𝗲𝗻𝘁, 𝗱𝗼𝗻'𝘁 𝗳𝗼𝗿𝗴𝗲𝘁 𝘁𝗼 𝗳𝗼𝗹𝗹𝗼𝘄 𝗺𝗲. #javascript #reactjs #nextjs #webdevelopment
useState vs Normal Variables in React Components
More Relevant Posts
-
🚀 JavaScript Interview Question: Event Bubbling vs Event Delegation One question I recently came across in a frontend interview was about Event Bubbling and Event Delegation in JavaScript. Let’s break it down simply 👇 🔹 Event Bubbling Event Bubbling is a mechanism where an event starts from the target element and then bubbles up to its parent elements in the DOM hierarchy. For example, if you click a button inside a div: Button → Div → Body → Document The event will trigger on the button first, then move upward to its parent elements. The event will trigger on the button first, then move upward to its parent elements. document.getElementById("parent").addEventListener("click", () => { console.log("Parent clicked"); }); document.getElementById("child").addEventListener("click", () => { console.log("Child clicked"); }); If the child is clicked, the console output will be: Child clicked Parent clicked This happens because of event bubbling. 🔹 Event Delegation Event Delegation is a technique where we attach a single event listener to a parent element instead of multiple child elements. It works because of event bubbling. Example: document.getElementById("list").addEventListener("click", (event) => { if (event.target.tagName === "LI") { console.log("List item clicked:", event.target.textContent); } }); Instead of adding listeners to every <li>, we attach one listener to the parent <ul>. 🔹 Why Event Delegation is Powerful ✅ Improves performance ✅ Reduces memory usage ✅ Works with dynamically added elements ✅ Cleaner and scalable code 💡 Interview Tip: If an interviewer asks about Event Delegation, always mention that it works because of Event Bubbling. 💬 Have you ever used event delegation in large React or JavaScript applications for performance optimization? #javascript #frontend #reactjs #webdevelopment #interviewpreparation #coding
To view or add a comment, sign in
-
🧑💻 JavaScript Interview Prep: The Questions That Actually Matter Just wrapped up a series of JS interviews — here are the most frequently asked questions that separate "familiar" from "fluent." Save this for your next round! 👇 --- 🔹 Core Concepts 1. Hoisting – What gets hoisted? Variables (var vs let/const) vs function declarations. 2. Closures – Can you explain them and give a real-world use case? 3. Event Loop – How does async JavaScript work under the hood? (Call stack, Web APIs, task queue) 4. this binding – How does this behave in arrow functions vs regular functions? In event handlers? 5. Prototypes & Inheritance – What's the difference between classical and prototypal inheritance? 🔹 Async JavaScript 1. Promises – Implement Promise.all, Promise.race, or a simple sleep() function. 2. Async/Await – How would you handle errors? (try/catch vs .catch()) 3. Callbacks – What is callback hell and how do you avoid it? 🔹 Functional & Array Methods 1. map, filter, reduce – When to use each. Bonus: chain them. 2. Deep vs Shallow Copy – How to clone an object/array without mutating the original. 3. Immutability – Why does it matter in React/state management? 🔹 DOM & Browser APIs 1. Event Delegation – How does it work and why use it? 2. Debouncing vs Throttling – Implement a simple debounce function. 3. localStorage vs sessionStorage vs cookies – Key differences. 🔹 Tricky Ones 1. == vs === – When would == be acceptable? (Spoiler: rarely.) 2. null vs undefined vs undeclared – How to check for each. 3. Currying – Write a sum(1)(2)(3) function. --- 💡 Pro tip: Don't just memorize — understand the why. Interviewers are looking for problem-solving ability, not just syntax recall. What’s one JS question that always shows up in your interviews? Drop it in the comments 👇 #JavaScript #FrontendInterview #WebDevelopment #CodingInterview #JS
To view or add a comment, sign in
-
ADVANCED JAVASCRIPT CONCEPTS FOR INTERVIEWS #SaveForLater #MohitDecodes If you're preparing for JavaScript interviews, these are must-know concepts that can seriously level up your understanding 👇 -- Callback Function passed as an argument & executed later → leads to callback hell -- Promise Handles async operations → resolve / reject (cleaner than callbacks) -- Async/Await Syntactic sugar over promises → makes async code look synchronous -- Strict Mode ("use strict") Catches silent errors & enforces cleaner coding practices -- Higher Order Functions Functions that take/return other functions → map, filter, reduce -- Call, Apply, Bind Control the value of this → powerful for context handling -- Scope Block | Function | Global → defines variable accessibility -- Closures Access outer function variables even after execution -- Hoisting Variables & functions moved to top before execution -- IIFE Immediately Invoked Functions → avoid global pollution -- Currying Convert multi-arg function → chain of single-arg functions -- Debouncing Delay execution → improves performance (search inputs, etc.) -- Throttling Limit execution rate → useful in scroll/resize events -- Polyfills Add support for modern features in older browsers 💡 These are not just interview questions — they define how JavaScript actually works under the hood. Pro Tip: Don’t just read — implement each concept with code! 💬 Was this helpful? 🔖 Save for later 📢 Follow for more: Mohit Kumar #JavaScript #Frontend #WebDevelopment #ReactJS #InterviewPrep #Coding #100DaysOfCode
To view or add a comment, sign in
-
🚀 Day 9 of Frontend Developer Interview Preparation Today I explored some very important JavaScript concepts — setTimeout and Higher-Order Functions. ⏳ setTimeout Learned how JavaScript handles asynchronous behavior using the event loop. Even though we provide a delay, the execution depends on the call stack and callback queue — which makes it more interesting than it looks! 🔁 Higher-Order Functions (HOF) Understood how functions can take other functions as arguments or return them. This concept is widely used in JavaScript (like map, filter, reduce) and is possible because functions are treated as first-class citizens. 💡 Key Takeaways: JavaScript is single-threaded but handles async tasks efficiently setTimeout doesn’t guarantee exact timing — it depends on the execution flow Higher-Order Functions make code more reusable and powerful 📌 Consistency is the key — learning step by step and strengthening fundamentals. If you're also preparing for frontend interviews, feel free to connect or share your thoughts! #JavaScript #FrontendDevelopment #InterviewPreparation #100DaysOfCode #WebDevelopment #LearningInPublic
To view or add a comment, sign in
-
💡 One of the Most Asked JavaScript Closure Questions in Interviews Closures are one of the most frequently tested concepts in JavaScript interviews. A classic output-based question looks like this: function createFunctions() { var arr = []; for (var i = 0; i < 3; i++) { arr.push(function () { console.log(i); }); } return arr; } const functions = createFunctions(); functions[0](); functions[1](); functions[2](); ❓ What will be the output? 3 3 3 🤔 Why does this happen? Because of closures. Each function inside the array does not capture the value of i. Instead, it captures the reference to the same variable i. By the time the functions are executed, the loop has already finished and i becomes 3. So every function prints: 3 ✅ How to fix it? Use let instead of var: for (let i = 0; i < 3; i++) { arr.push(function () { console.log(i); }); } Now the output will be: 0 1 2 Because let creates a new block-scoped variable for each iteration. 📌 Interview Tip Whenever closures are used inside loops: • var → Same variable shared • let → New variable per iteration Understanding this difference can help you solve many tricky JavaScript interview questions. 💬 Quick challenge: Without using let, how would you modify the code to print 0 1 2? Comment your solution 👇 #JavaScript #FrontendDevelopment #WebDevelopment #Closures #JavaScriptInterview
To view or add a comment, sign in
-
🚀 Frontend Interview Questions – Day 1 Preparing for frontend interviews and sharing some important questions every day. 1️⃣ What is the Event Loop in JavaScript? JavaScript is single-threaded. The event loop helps handle asynchronous operations like promises, timers, and API calls without blocking the main thread. 2️⃣ What is the difference between map(), filter(), and reduce()? map() transforms each element, filter() returns elements based on a condition, and reduce() converts an array into a single value. 3️⃣ What is the Virtual DOM in React? Virtual DOM is a lightweight copy of the real DOM. React compares changes in the virtual DOM and updates only the necessary parts in the real DOM, improving performance. 4️⃣ What is the difference between let, const, and var? var is function-scoped and can be redeclared. let is block-scoped and can be updated. const is block-scoped but cannot be reassigned. 5️⃣ What is Debouncing in JavaScript? Debouncing delays a function execution until the user stops triggering the event. It is commonly used in search inputs to avoid too many API calls. 📌 I will share more frontend interview questions daily. #frontenddeveloper #javascript #reactjs #webdevelopment #codinginterview
To view or add a comment, sign in
-
𝗧𝗼𝗽 𝗥𝗲𝗮𝗰𝘁 𝗜𝗻𝘁𝗲𝗿𝘃𝗶𝗲𝘄 𝗤𝘂𝗲𝘀𝘁𝗶𝗼𝗻𝘀 | 𝗥𝗲𝗮𝗰𝘁.𝗷𝘀 𝗜𝗻𝘁𝗲𝗿𝘃𝗶𝗲𝘄 𝗣𝗿𝗲𝗽𝗮𝗿𝗮𝘁𝗶𝗼𝗻 𝗳𝗼𝗿 𝗗𝗲𝘃𝗲𝗹𝗼𝗽𝗲𝗿𝘀 Preparing for a React.js interview? In this video, we cover the most commonly asked React interview questions that every Frontend and React Developer should know. React is one of the most popular JavaScript libraries for building modern user interfaces, and understanding its core concepts is essential for cracking frontend developer interviews. In this guide, you will revise important React fundamentals, hooks, performance optimization techniques, and best practices that are frequently asked in technical interviews. Topics Covered: What is React and how it works Virtual DOM and Reconciliation Components and Props State and Lifecycle methods React Hooks (useState, useEffect, useRef) useEffect vs useLayoutEffect Controlled vs Uncontrolled Components Context API vs Redux React Performance Optimization Lazy Loading and Code Splitting This video is useful for Frontend Developers, React Developers, and Full Stack Developers preparing for technical interviews in product-based and service-based companies. Subscribe to Code with Gandhi for more React, JavaScript, and interview preparation content. #ReactJS #ReactInterviewQuestions #FrontendDeveloper #JavaScript #ReactDeveloper #WebDevelopment #CodingInterview #TechInterview #SoftwareDeveloper #ReactHooks #FrontendEngineering #InterviewPreparation #WebDeveloper
To view or add a comment, sign in
-
𝗧𝗼𝗽 𝗥𝗲𝗮𝗰𝘁 𝗜𝗻𝘁𝗲𝗿𝘃𝗶𝗲𝘄 𝗤𝘂𝗲𝘀𝘁𝗶𝗼𝗻𝘀 | 𝗥𝗲𝗮𝗰𝘁.𝗷𝘀 𝗜𝗻𝘁𝗲𝗿𝘃𝗶𝗲𝘄 𝗣𝗿𝗲𝗽𝗮𝗿𝗮𝘁𝗶𝗼𝗻 𝗳𝗼𝗿 𝗗𝗲𝘃𝗲𝗹𝗼𝗽𝗲𝗿𝘀 Preparing for a React.js interview? In this video, we cover the most commonly asked React interview questions that every Frontend and React Developer should know. React is one of the most popular JavaScript libraries for building modern user interfaces, and understanding its core concepts is essential for cracking frontend developer interviews. In this guide, you will revise important React fundamentals, hooks, performance optimization techniques, and best practices that are frequently asked in technical interviews. Topics Covered: What is React and how it works Virtual DOM and Reconciliation Components and Props State and Lifecycle methods React Hooks (useState, useEffect, useRef) useEffect vs useLayoutEffect Controlled vs Uncontrolled Components Context API vs Redux React Performance Optimization Lazy Loading and Code Splitting This video is useful for Frontend Developers, React Developers, and Full Stack Developers preparing for technical interviews in product-based and service-based companies. Subscribe to Code with Gandhi for more React, JavaScript, and interview preparation content. #ReactJS #ReactInterviewQuestions #FrontendDeveloper #JavaScript #ReactDeveloper #WebDevelopment #CodingInterview #TechInterview #SoftwareDeveloper #ReactHooks #FrontendEngineering #InterviewPreparation #WebDeveloper
To view or add a comment, sign in
-
𝗧𝗼𝗽 𝗥𝗲𝗮𝗰𝘁 𝗜𝗻𝘁𝗲𝗿𝘃𝗶𝗲𝘄 𝗤𝘂𝗲𝘀𝘁𝗶𝗼𝗻𝘀 | 𝗥𝗲𝗮𝗰𝘁.𝗷𝘀 𝗜𝗻𝘁𝗲𝗿𝘃𝗶𝗲𝘄 𝗣𝗿𝗲𝗽𝗮𝗿𝗮𝘁𝗶𝗼𝗻 𝗳𝗼𝗿 𝗗𝗲𝘃𝗲𝗹𝗼𝗽𝗲𝗿𝘀 Preparing for a React.js interview? In this video, we cover the most commonly asked React interview questions that every Frontend and React Developer should know. React is one of the most popular JavaScript libraries for building modern user interfaces, and understanding its core concepts is essential for cracking frontend developer interviews. In this guide, you will revise important React fundamentals, hooks, performance optimization techniques, and best practices that are frequently asked in technical interviews. Topics Covered: What is React and how it works Virtual DOM and Reconciliation Components and Props State and Lifecycle methods React Hooks (useState, useEffect, useRef) useEffect vs useLayoutEffect Controlled vs Uncontrolled Components Context API vs Redux React Performance Optimization Lazy Loading and Code Splitting This video is useful for Frontend Developers, React Developers, and Full Stack Developers preparing for technical interviews in product-based and service-based companies. Subscribe to Code with Gandhi for more React, JavaScript, and interview preparation content. #ReactJS #ReactInterviewQuestions #FrontendDeveloper #JavaScript #ReactDeveloper #WebDevelopment #CodingInterview #TechInterview #SoftwareDeveloper #ReactHooks #FrontendEngineering #InterviewPreparation #WebDeveloper
To view or add a comment, sign in
-
𝗧𝗼𝗽 𝗥𝗲𝗮𝗰𝘁 𝗜𝗻𝘁𝗲𝗿𝘃𝗶𝗲𝘄 𝗤𝘂𝗲𝘀𝘁𝗶𝗼𝗻𝘀 | 𝗥𝗲𝗮𝗰𝘁.𝗷𝘀 𝗜𝗻𝘁𝗲𝗿𝘃𝗶𝗲𝘄 𝗣𝗿𝗲𝗽𝗮𝗿𝗮𝘁𝗶𝗼𝗻 𝗳𝗼𝗿 𝗗𝗲𝘃𝗲𝗹𝗼𝗽𝗲𝗿𝘀 Preparing for a React.js interview? In this video, we cover the most commonly asked React interview questions that every Frontend and React Developer should know. React is one of the most popular JavaScript libraries for building modern user interfaces, and understanding its core concepts is essential for cracking frontend developer interviews. In this guide, you will revise important React fundamentals, hooks, performance optimization techniques, and best practices that are frequently asked in technical interviews. Topics Covered: What is React and how it works Virtual DOM and Reconciliation Components and Props State and Lifecycle methods React Hooks (useState, useEffect, useRef) useEffect vs useLayoutEffect Controlled vs Uncontrolled Components Context API vs Redux React Performance Optimization Lazy Loading and Code Splitting This video is useful for Frontend Developers, React Developers, and Full Stack Developers preparing for technical interviews in product-based and service-based companies. Subscribe to Code with Gandhi for more React, JavaScript, and interview preparation content. #ReactJS #ReactInterviewQuestions #FrontendDeveloper #JavaScript #ReactDeveloper #WebDevelopment #CodingInterview #TechInterview #SoftwareDeveloper #ReactHooks #FrontendEngineering #InterviewPreparation #WebDeveloper
To view or add a comment, sign in
Explore content categories
- Career
- Productivity
- Finance
- Soft Skills & Emotional Intelligence
- Project Management
- Education
- Technology
- Leadership
- Ecommerce
- User Experience
- Recruitment & HR
- Customer Experience
- Real Estate
- Marketing
- Sales
- Retail & Merchandising
- Science
- Supply Chain Management
- Future Of Work
- Consulting
- Writing
- Economics
- Artificial Intelligence
- Employee Experience
- Workplace Trends
- Fundraising
- Networking
- Corporate Social Responsibility
- Negotiation
- Communication
- Engineering
- Hospitality & Tourism
- Business Strategy
- Change Management
- Organizational Culture
- Design
- Innovation
- Event Planning
- Training & Development