JavaScript Core Concepts Revision Checklist
Topic Area Subtopics ✅ Done
1. Basics of JavaScript What JS is, ways to include ⬜
(inline, internal, external),
statements, expressions,
comments, case-sensitivity
2. Data Types Primitives: Number, String, ⬜
Boolean, Undefined, Null,
Symbol, BigInt; Reference:
Objects, Arrays, Functions;
typeof quirks, type coercion
3. Variables & Scope var, let, const differences, ⬜
global vs local vs block
scope, hoisting, TDZ
4. Operators Arithmetic, assignment, ⬜
comparison (== vs ===),
logical (&& || !), ternary,
typeof, instanceof
5. Control Flow if/else, switch, loops (for, ⬜
while, do...while, for...in,
for...of), break, continue
6. Functions Declarations vs expressions, ⬜
arrow functions,
parameters/arguments,
default params,
rest/spread, return values,
scope
7. Objects & Arrays Creating objects, properties ⬜
& methods, this keyword,
destructuring, array
methods (map, filter,
reduce), JSON (stringify,
parse)
8. Prototypes & OOP Prototype chain, ⬜
constructor functions,
classes & inheritance,
encapsulation, closures
9. Execution Context & Execution context, call ⬜
Scope Chain stack, lexical scope, closures
10. Asynchronous JS Event loop, callbacks, ⬜
promises, async/await,
setTimeout, setInterval
11. DOM & Events DOM structure, element ⬜
selection, modifying
content/style, event
handling (onclick,
addEventListener),
bubbling & capturing
12. Error Handling try/catch/finally, throw, ⬜
error objects
13. ES6+ Features let/const, arrow functions, ⬜
template literals,
destructuring, modules,
spread/rest, default
params, Map, Set, optional
chaining, nullish coalescing
14. Advanced Concepts Strict mode, higher-order ⬜
functions, currying,
functional programming
basics, event delegation,
debouncing & throttling
15. JS Quirks & Gotchas typeof null → object, NaN ! ⬜
== NaN, coercion oddities
(0 == false), [] + [] → '', []
== ![]