JavaScript Variables Lifecycle: Why let Is Not Hoisted
Explains why 'let' variables in JavaScript are not hoisted like 'var', detailing the variable lifecycle phases.
Dmitri Pavlutin is a Senior Frontend Developer with 10+ years of experience, specializing in JavaScript, TypeScript, React, and Vue.js. He shares practical tutorials and insights on modern frontend development, UI/UX, and application architecture.
176 articles from this blog
Explains why 'let' variables in JavaScript are not hoisted like 'var', detailing the variable lifecycle phases.
Explores the evolution of JavaScript object literals in ES2015, covering prototype setup, shorthand methods, computed properties, and future proposals.
A detailed guide to ES2016 JavaScript features, focusing on the array.includes() method and the exponentiation operator (**).
A historical overview of JavaScript's evolution from a simple scripting language in 1995 to a dominant force in web development.
Explores various methods for initializing and creating arrays in JavaScript, from basic literals to advanced techniques.
Explores six different ways to declare functions in JavaScript, covering syntax, use cases, and common pitfalls.
Explains how the JavaScript spread (...) and rest (...) operators solve common problems with function arguments and array manipulation.
Explains scenarios where JavaScript arrow functions are problematic, such as in object methods and prototypes, due to their lexical 'this' binding.
Explains the concept of hoisting in JavaScript, detailing how variable and function declarations are processed before code execution.
A clear guide explaining the 'this' keyword in JavaScript, covering its behavior across different function invocation types and common pitfalls.
Explains the constructor property in JavaScript, its role in inheritance, and how to use it for type checking and class identification.
A technical guide on intercepting and monitoring XMLHttpRequest events in vanilla JavaScript by modifying the prototype.
Explains how JavaScript's array length property works, covering dense vs. sparse arrays and how modifying length affects elements.
Explains the complex behavior of JavaScript's equality (==) and identity (===) operators, detailing type coercion rules and providing illustrative examples.
A detailed look at how JavaScript's addition operator handles type conversion, including rules for strings, numbers, and objects.
A tutorial on using nvm (Node Version Manager) to install and manage multiple Node.js versions on Linux systems.