# 33-js-concepts | Leonardo Maldonado | Knowledge Base | Instagit

📜 33 JavaScript concepts every developer should know.

GitHub Stars: 66.3k

Repository: https://github.com/leonardomso/33-js-concepts

---

## Articles

### [Performance Implications of Different Data Structures in JavaScript](/leonardomso/33-js-concepts/what-are-the-performance-implications-of-different-data-structures-in-javascript)

Explore the performance implications of JavaScript data structures. Understand how choosing the right structure optimizes operations from O(1) to O(n), preventing bottlenecks.

- Tags: performance
- Published: 2026-03-04

### [How Event Bubbling and Capturing Work in the DOM: A Complete Guide to Event Propagation](/leonardomso/33-js-concepts/how-does-event-bubbling-and-capturing-work-in-the-dom-and-what-is-event-delegation)

Master DOM event bubbling and capturing. Understand event propagation phases and leverage event delegation for efficient single-listener event handling.

- Tags: deep-dive
- Published: 2026-03-04

### [7 Ways to Create Objects in JavaScript: Complete Guide to Object Creation Patterns](/leonardomso/33-js-concepts/what-are-the-different-ways-to-create-objects-in-javascript-and-when-to-use-each-approach)

Explore seven JavaScript object creation patterns. Learn when to use literals, classes, factories & more for efficient memory, encapsulation & inheritance.

- Tags: deep-dive
- Published: 2026-03-04

### [How JavaScript Engines Optimize Code with JIT Compilation, Inline Caching, and Hidden Classes](/leonardomso/33-js-concepts/how-do-javascript-engines-optimize-code-with-jit-compilation-inline-caching-and-hidden-classes)

Discover how JavaScript engines optimize code with JIT compilation, inline caching, and hidden classes for near-native speed. Learn the core concepts.

- Tags: internals
- Published: 2026-03-04

### [What Are Currying and Function Composition? A Guide to Modular JavaScript Code](/leonardomso/33-js-concepts/what-are-currying-and-function-composition-and-how-do-they-improve-code-modularity)

Learn about currying and function composition in JavaScript. Discover how these functional programming techniques create modular, reusable code by transforming functions into data pipelines.

- Tags: deep-dive
- Published: 2026-03-03

### [What Is the Difference Between Map, Filter, and Reduce in JavaScript?](/leonardomso/33-js-concepts/what-is-the-difference-between-map-filter-and-reduce-array-methods-and-when-to-use-each)

Understand the differences between JavaScript map filter and reduce array methods Learn when to use each to transform filter or accumulate array elements while maintaining immutability

- Tags: deep-dive
- Published: 2026-03-03

### [How the JavaScript Call Stack Works and What Causes Stack Overflow Errors](/leonardomso/33-js-concepts/how-does-the-call-stack-work-and-what-causes-stack-overflow-errors)

Understand the JavaScript call stack, how it manages function calls, and what causes stack overflow errors. Learn to prevent RangeErrors in your code.

- Tags: internals
- Published: 2026-03-03

### [What Are Web Workers and How They Enable Multi-Threading in JavaScript](/leonardomso/33-js-concepts/what-are-web-workers-and-how-do-they-enable-multi-threading-in-javascript)

Discover Web Workers, a browser API enabling true JavaScript multi-threading. Run code in background threads, boosting performance without UI interference. Learn more now.

- Tags: deep-dive
- Published: 2026-03-03

### [How Async/Await Functions Work Under the Hood in JavaScript](/leonardomso/33-js-concepts/how-do-async-await-functions-work-under-the-hood-and-how-do-they-relate-to-promises)

Uncover how async await functions work under the hood in JavaScript. Learn how they compile to state machines and interact with Promises for efficient asynchronous operation.

- Tags: deep-dive
- Published: 2026-03-03

### [JavaScript Type Coercion and the == vs === Pitfalls Explained](/leonardomso/33-js-concepts/what-is-type-coercion-in-javascript-and-what-are-the-common-pitfalls-with-vs)

Unravel JavaScript type coercion and the == vs === pitfalls. Understand automatic type conversions and avoid unexpected results like [] == ![] being true.

- Tags: deep-dive
- Published: 2026-03-03

### [How Memory Management and Garbage Collection Work in JavaScript Engines Like V8](/leonardomso/33-js-concepts/how-does-memory-management-and-garbage-collection-work-in-javascript-engines-like-v8)

Understand JavaScript memory management and garbage collection in V8. Learn how V8 allocates memory, uses generational garbage collection, and optimizes performance for short-lived and long-lived objects.

- Tags: deep-dive
- Published: 2026-03-03

### [ES Modules vs CommonJS in Node.js: Static Analysis and Live Bindings Explained](/leonardomso/33-js-concepts/what-are-es-modules-and-how-do-they-differ-from-commonjs-in-node-js)

Understand ES Modules vs CommonJS in Node.js. Discover static analysis, live bindings, and asynchronous vs synchronous loading for better dependency management.

- Tags: deep-dive
- Published: 2026-03-03

### [How Does the DOM Work? Best Practices for Efficient DOM Manipulation](/leonardomso/33-js-concepts/how-does-the-dom-work-and-what-are-the-best-practices-for-manipulating-it-efficiently)

Understand how the DOM works and learn best practices for efficient DOM manipulation. Discover techniques to minimize reflows and repaints for faster web pages.

- Tags: deep-dive
- Published: 2026-03-03

### [What Are Higher-Order Functions and How Do They Enable Functional Programming Patterns?](/leonardomso/33-js-concepts/what-are-higher-order-functions-and-how-do-they-enable-functional-programming-patterns)

Discover higher-order functions in JavaScript. Learn how these powerful functions enable functional programming patterns like map, filter, reduce, currying, and composition for cleaner code.

- Tags: deep-dive
- Published: 2026-03-03

### [How the Fetch API Works Compared to XMLHttpRequest for HTTP Requests](/leonardomso/33-js-concepts/how-does-the-fetch-api-work-compared-to-xmlhttprequest-for-http-requests)

Understand Fetch API vs XMLHttpRequest for HTTP requests. Discover how Fetch offers cleaner async/await syntax and better control than older callback methods.

- Tags: deep-dive
- Published: 2026-03-03

### [JavaScript Generators and Iterators: How They Enable Lazy Evaluation](/leonardomso/33-js-concepts/what-are-javascript-generators-and-iterators-and-how-do-they-enable-lazy-evaluation)

Explore JavaScript generators and iterators to understand how they create sequences on demand and enable lazy evaluation, computing values only when needed. Learn this essential JS concept for efficient code.

- Tags: deep-dive
- Published: 2026-03-03

### [How the `this` Keyword Works in JavaScript: Regular Functions, Arrow Functions, and Methods](/leonardomso/33-js-concepts/how-does-the-this-keyword-work-in-different-contexts-regular-functions-arrow-functions-methods)

Understand JavaScript this binding in regular functions, arrow functions, and methods. Learn how invocation context dictates the value of this, prioritizing binding rules.

- Tags: deep-dive
- Published: 2026-03-03

### [Var vs Let vs Const: Scope and Hoisting Differences Explained](/leonardomso/33-js-concepts/what-is-the-difference-between-var-let-and-const-in-terms-of-scope-and-hoisting)

Understand var let const differences Learn about scope hoisting and the Temporal Dead Zone in JavaScript Master these core JS concepts to write cleaner more robust code

- Tags: deep-dive
- Published: 2026-03-03

### [How Closures Work in JavaScript: Complete Guide with Practical Examples](/leonardomso/33-js-concepts/how-do-closures-work-in-javascript-and-what-are-their-practical-use-cases)

Master JavaScript closures with our guide. Understand how closures retain scope access and explore practical uses like data encapsulation and function factories. Learn JavaScript concepts effectively.

- Tags: deep-dive
- Published: 2026-03-03

### [What Is the Prototype Chain in JavaScript and How Does Inheritance Work?](/leonardomso/33-js-concepts/what-is-the-prototype-chain-in-javascript-and-how-does-inheritance-work)

Understand the JavaScript prototype chain and how inheritance works. Learn about the delegation mechanism and property lookups the engine uses to resolve values.

- Tags: deep-dive
- Published: 2026-03-03

### [How JavaScript Promises Work Internally: The Three States and Mechanics Explained](/leonardomso/33-js-concepts/how-do-promises-work-internally-and-what-are-the-three-states-they-can-be-in)

Explore how JavaScript Promises work internally. Understand their three states pending fulfilled or rejected and how they manage asynchronous operations.

- Tags: internals
- Published: 2026-03-03

### [Task Queue vs Microtask Queue in JavaScript: Execution Priority Explained](/leonardomso/33-js-concepts/what-is-the-difference-between-the-task-queue-macrotask-and-microtask-queue-in-javascript)

Understand the difference between JavaScripts Task Queue and Microtask Queue. Discover how microtasks have higher priority for efficient asynchronous code execution.

- Tags: deep-dive
- Published: 2026-03-03

### [How JavaScript Handles Asynchronous Operations with the Event Loop in a Single-Threaded Environment](/leonardomso/33-js-concepts/how-does-javascript-handle-asynchronous-operations-with-the-event-loop-while-being-single-threaded)

Understand how JavaScript's event loop manages asynchronous operations in a single-threaded environment. Learn about Web APIs and callback queues for efficient concurrency without blocking.

- Tags: deep-dive
- Published: 2026-03-03

