This is the rapid-fire revision layer for the JavaScript notes.
Lexical scope means scope is determined by where code is written, not where a function is called.
Hoisting is the visible result of declarations being processed before execution.
A closure is when a function retains access to variables from the scope where it was created.
var is function-scoped. let and const are block-scoped. const prevents rebinding.
=== compares without coercion. == allows coercion according to JavaScript rules.
It is the mechanism that schedules queued async work onto the call stack when the stack is empty.
Because promise handlers are microtasks and are processed before the next macrotask.
async/await is syntax built on top of promises that makes async code easier to read.
The lookup chain JavaScript follows when a property is missing on the current object.
No. They are syntax over JavaScript's prototype system.
Objects remain reachable when they should have been released.
Debounce waits for activity to stop. Throttle limits how often a function can run.