Day 1 of 30 days of javascript challenge. problem-2667 Problem - Write a function createHelloWorld that returns another function, that returns "Hello World" As this is my first code, I revised my notes on javascript scope. ☑️ Function scope - Any variables declared inside a function body cannot be accessed outside the function body, but global variables can be used inside function body ☑️ Block scope - Any variable declared inside { } cannot be used outside the { } block, although it supports only let and const keyword, var can be used ☑️ Lexical scope - A variable declared outside a function can be accessed inside another function defined after the variable declaration. (The opposite is not true ) This problem uses the concept of closures and higher order functions. Please feel free to discuss where can I improve the code or if you have a different perspective, comment below your views. #javascript #coding #development #motivation #goals #leetcode #webdevelopment
JavaScript Challenge: Function Scope and Closures
More Relevant Posts
-
I ran a small JavaScript experiment today, and it was a good reminder that performance often hides inside simple concepts. I used the same function twice with the same inputs. The first call took noticeable time. The second call returned almost instantly. Nothing changed in the inputs. Nothing changed in the output. The only difference was that the second time, JavaScript didn’t need to do the work again. That’s the beauty of memoization. Instead of recalculating, it remembers the previous result and returns it from cache. What looks like a small optimization in code can make a big difference in how efficiently an application behaves. The deeper I go into JavaScript, the more I realize: the real power is not just in writing code — it’s in understanding how to make code smarter. #JavaScript #WebDevelopment #FrontendDevelopment #Memoization #Closures
To view or add a comment, sign in
-
-
🚀 Day 963 of #1000DaysOfCode ✨ Difference Between var, let & const in JavaScript These three look similar… but behave very differently in real-world code. In today’s post, I’ve broken down the differences between `var`, `let`, and `const` in a simple and practical way, so you can understand when and why to use each of them. From scope and hoisting to re-declaration and mutability, these concepts directly impact how your code behaves — and are often the reason behind many unexpected bugs. I’ve also explained common mistakes developers make while using them, so you can avoid those pitfalls in your own projects. If you’re writing modern JavaScript, having clarity on this is absolutely essential. 👇 Which one do you use the most — `var`, `let`, or `const`? #Day963 #learningoftheday #1000daysofcodingchallenge #FrontendDevelopment #WebDevelopment #JavaScript #React #CodingCommunity #JSBasics
To view or add a comment, sign in
-
Most people think they understand JavaScript classes. They don’t. Because JavaScript doesn’t even have real classes. What it actually has is prototypes — and classes are just syntactic sugar on top of them. Today in my T9 class, this completely changed how I look at JS: → Prototype-based inheritance (the actual mechanism) → Traditional vs Modern prototype handling → Constructor Functions (how things worked before classes) Then we moved to what most people are comfortable with: → Classes in JavaScript → constructor, extends, super, static → The 4 pillars of OOP: Encapsulation Inheritance Polymorphism Abstraction But here’s the uncomfortable truth: If you don’t understand prototypes, you don’t actually understand inheritance in JavaScript. You’re just memorizing syntax. That’s why debugging feels random. That’s why “this” behaves weird. That’s why things break in unexpected ways. Now it makes sense. Still early in the journey — but this was one of those “everything clicks” moments. Do you think JS should have stayed purely prototype-based, or are classes a good abstraction? #JavaScript #OOPS #WebDevelopment #LearningInPublic Thankyou Chai Aur Code Suraj Kumar Jha Sir Hitesh Choudhary Sir Piyush Garg Sir
To view or add a comment, sign in
-
-
🚀 Day 4/30 – JavaScript Challenge Solved: Counter II (LeetCode 2665) Today’s problem was all about understanding closures and how functions can maintain their own state in JavaScript. What I learned: 1.How closures help preserve variable values across function calls 2.Creating multiple operations (increment, decrement, reset) using a single function 3.Clean use of arrow functions for concise code Approach: I created a function that stores the initial value and returns an object with three methods: 1.increment() -> increases value 2.decrement() -> decreases value 3.reset() -> resets to initial value All of this works because of closure, where the inner functions still remember the variable n. Key Insight: Closures are powerful when you need to encapsulate data and control how it’s modified — a very common pattern in real-world JavaScript applications. Consistency is the real game here 🔥 Let’s keep building, one day at a time. #Day4 #30DaysOfCode #JavaScript #WebDevelopment #CodingChallenge #LeetCode #Closures #LearningJourney
To view or add a comment, sign in
-
-
🚀 Day 39/50 – Scope in JavaScript Today I learned about Scope in JavaScript, which defines where variables can be accessed in a program. 🔹 Scope determines the visibility and accessibility of variables. 📌 Types of Scope in JavaScript 1️⃣ Global Scope – Variables declared outside any function can be accessed anywhere. let name = "Priyanka"; function show() { console.log(name); } show(); 2️⃣ Function Scope – Variables declared inside a function are accessible only within that function. function test() { let msg = "Hello"; console.log(msg); } test(); 3️⃣ Block Scope – Variables declared with let and const inside {} are block-scoped. if(true){ let x = 10; console.log(x); } 4️⃣ Local Scope – Variables declared inside a block or function are local to that area. 💡 Key Learnings: ✅ var → function scoped ✅ let and const → block scoped ✅ Scope helps avoid variable conflicts ✅ Improves code security and readability Thanks for mentors 10000 Coders Raviteja T Abdul Rahman #Day39 #50DaysOfCode #JavaScript #WebDevelopment #FrontendDeveloper #CodingJourney #LearningEveryday
To view or add a comment, sign in
-
-
JavaScript Closures — made simple 💡 Closures sound complex… but they’re actually simple once you get the idea. A closure is when a function remembers variables from its outer scope even after the outer function has finished executing. Think of it like this: An inner function carries a “backpack” of variables and never forgets them. How it works: 1. Outer function creates a variable 2. Inner function uses that variable 3. Outer function returns the inner function 4. Inner function still has access to that variable Why closures are powerful: • Data privacy (encapsulation) • Maintain state between function calls • Used in callbacks, event handlers, React hooks • Foundation for advanced JavaScript concepts Real-world uses: • Counters • Private variables • One-time execution functions • Custom hooks & memoization One-line takeaway: A closure = function with a memory of its lexical scope If you understand closures, you’re moving from basics to real JavaScript thinking. What concept in JavaScript took you the longest to understand? #JavaScript #Closures #WebDevelopment #Frontend #CodingConcepts #LearnJavaScript #Programming #DeveloperLife
To view or add a comment, sign in
-
-
JavaScript Closures — made simple 💡 Closures sound complex… but they’re actually simple once you get the idea. A closure is when a function remembers variables from its outer scope even after the outer function has finished executing. Think of it like this: An inner function carries a “backpack” of variables and never forgets them. How it works: 1. Outer function creates a variable 2. Inner function uses that variable 3. Outer function returns the inner function 4. Inner function still has access to that variable Why closures are powerful: • Data privacy (encapsulation) • Maintain state between function calls • Used in callbacks, event handlers, React hooks • Foundation for advanced JavaScript concepts Real-world uses: • Counters • Private variables • One-time execution functions • Custom hooks & memoization One-line takeaway: A closure = function with a memory of its lexical scope If you understand closures, you’re moving from basics to real JavaScript thinking. What concept in JavaScript took you the longest to understand? #JavaScript #Closures #WebDevelopment #Frontend #CodingConcepts #LearnJavaScript #Programming #DeveloperLife
To view or add a comment, sign in
-
-
🚀 Day 939 of #1000DaysOfCode ✨ Object Methods in JavaScript Objects are one of the most fundamental parts of JavaScript, and knowing how to work with them efficiently can make your code much more powerful and readable. In today’s post, I’ve covered important object methods in JavaScript that every developer should know. Understanding these methods helps you manipulate data structures more effectively and write cleaner, more efficient code. If you work with JavaScript regularly, mastering object methods is definitely a must. 👇 Which JavaScript object method do you use the most in your projects? #Day939 #learningoftheday #1000daysofcodingchallenge #FrontendDevelopment #WebDevelopment #JavaScript #React #Next #CodingCommunity
To view or add a comment, sign in
-
🚀 Day 944 of #1000DaysOfCode ✨ Understanding Temporal Dead Zone in JavaScript JavaScript can sometimes behave in unexpected ways — especially when it comes to variable declarations. In today’s post, I’ve explained the concept of the Temporal Dead Zone (TDZ) in a simple and practical way, so you can understand why accessing variables before declaration can throw errors. The TDZ is the time between when a variable is hoisted and when it is actually initialized. This is why variables declared with `let` and `const` behave differently compared to `var`. Understanding this concept helps you avoid tricky bugs and write more predictable and cleaner code. If you’re working with modern JavaScript, knowing how TDZ works is essential for debugging and writing reliable applications. 👇 Have you ever faced a TDZ-related error without knowing the reason? #Day944 #learningoftheday #1000daysofcodingchallenge #FrontendDevelopment #WebDevelopment #JavaScript #React #Next #CodingCommunity #AsyncJavaScript
To view or add a comment, sign in
-
🚀 JavaScript Problem-Solving Practice 💻 Today, I worked on improving my logic building skills with some interesting problems 👇 🔹 Minimum Coins Problem Used slice() + reduce() to find the minimum number of elements forming a target sum. 🔹 Array Transformation Replaced even indices with minimum value and sorted odd indices using sort(). 🔹 First Non-Repeating Character Used an object (frequency count) to find the first unique character in a string. 💡 Key Learnings: ✔️ Better understanding of slice(), reduce(), sort() ✔️ Improved array & string manipulation ✔️ Strengthened problem-solving approach Consistency is the key 🔑✨ #JavaScript #ProblemSolving #CodingPractice #FrontendDevelopment
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
That is a great decision. One cannot build logic without solving problems.