This repository contains daily learning notes, summaries, and practice related to the core fundamentals of JavaScript. It covers essential building blocks like execution context, call stack, scoping, hoisting, and other behind-the-scenes concepts that every serious JavaScript developer must understand.
- Daily revision and hands-on practice
- In-depth explanations of how JavaScript actually works
- A growing reference of my personal JavaScript understanding
- Code Execution
JavaScript code runs in two phases — memory creation and execution. - Call Stack
It manages function calls in a last-in, first-out (LIFO) manner. undefined
vsis not defined
undefined
means declared but not assigned;is not defined
means never declared.- Window Object
In browsers,window
is the global object that holds global variables and functions. - Variable Scoping
Scope determines where a variable can be accessed — function or block level.
- Lexical Environment
The environment where variables and functions are physically written, deciding their scope access. - Scope Chaining
If a variable is not found in the current scope, JavaScript looks up the outer scopes until it finds it. - Hoisting
Variables and functions are moved to the top of their scope during memory allocation phase. - Temporal Dead Zone (TDZ)
A phase between block creation and initialization wherelet
andconst
variables cannot be accessed.