Understanding variable accessibility and lifetime
Variables accessible throughout your code
Variables within functions and blocks
Understanding let and const scoping
Variable and function declaration hoisting
Understanding and using closures