JavaScript
From absolute beginner to advanced JavaScript.
Beginner
- What is JavaScript?: The programming language that makes websites interactive.
- Variables: A named container for storing a value your program can reuse.
- Data Types: The different kinds of values JavaScript can store and work with.
- Operators: Symbols that perform actions on values, like math or comparisons.
- Conditions: Making your code choose between different paths based on a test.
- Loops: Repeating an action multiple times without copy-pasting code.
- Functions: A reusable, named block of code that performs a specific task.
Intermediate
- Arrays: An ordered list of values, stored in a single variable.
- Objects: A collection of related values, stored as named properties.
- Scope: The rules that decide where a variable can be used in your code.
- Closures: A function that remembers the variables from where it was created, even after that outer code has finished running.
- Array Methods (forEach, map, filter, reduce...): The built-in tools for looping over, transforming, and summarizing arrays without writing manual loops.
- String Methods: The built-in tools for reading, searching, and reshaping text.
- Callbacks: A function you pass into another function, to be called later — often once some work finishes.
- Higher-Order Functions: A function that takes another function as input, returns one as output, or both.
- Destructuring & Spread/Rest: Quick ways to pull values out of arrays/objects, and to expand or collect values using ...
Advanced
- Promises: An object that represents a value you'll get later, not right now.
- Async/Await: A cleaner way to write asynchronous code so it reads like normal, step-by-step code.
- Event Loop: The mechanism that lets JavaScript handle many tasks without ever running two at once.
- Prototypes: How JavaScript objects share behavior with each other behind the scenes.
- this: A special keyword that refers to whatever object is currently 'in charge' of the running code.
- Common JavaScript Confusions: A collection of surprising JavaScript behaviors that trip up almost everyone at some point.
- Error Handling: Dealing with things that go wrong in your code on purpose, instead of letting the program crash.
- Modules: Splitting code across multiple files, and sharing pieces between them deliberately.
- Memory Management: How JavaScript decides when a piece of data is no longer needed and can be cleaned up.
- Optional Chaining & Nullish Coalescing: Safely reading deeply nested properties, and providing defaults, without a pile of manual checks.
- JSON: A simple, text-based format for representing data, used constantly to send information between programs.
- Map and Set: Two built-in collections — Map for key-value pairs, Set for unique values — that improve on what plain objects and arrays can do.