docs/getting-started/learning-paths.mdx
Not everyone starts from the same place. Choose a learning path that matches your experience and goals.
<Tabs> <Tab title="Beginner"> **For:** Complete beginners or those new to JavaScript**Time:** 4-8 weeks at a comfortable pace
Start here if you're new to programming or just starting with JavaScript.
**Time:** 2-4 weeks
Choose this if you can write basic JavaScript but want to understand it more deeply.
**Time:** 1-2 weeks (review mode)
Focus on concepts commonly asked in JavaScript interviews.
If you're new to JavaScript, follow this order. Each concept builds on the previous ones.
<Steps> <Step title="Week 1-2: The Fundamentals"> Start with the building blocks of JavaScript.1. [Primitive Types](/concepts/primitive-types) - What types of data exist in JavaScript?
2. [Primitives vs Objects](/concepts/primitives-objects) - How do JavaScript values behave differently?
3. [Type Coercion](/concepts/type-coercion) - How JavaScript converts between types
4. [Equality Operators](/concepts/equality-operators) - The difference between == and ===
5. [Scope and Closures](/concepts/scope-and-closures) - Where variables are accessible
6. [Call Stack](/concepts/call-stack) - How JavaScript tracks function calls
7. [Event Loop](/concepts/event-loop) - How async code works
8. [Higher-Order Functions](/concepts/higher-order-functions) - Functions that work with functions
9. [map, reduce, filter](/concepts/map-reduce-filter) - Essential array methods
10. [Pure Functions](/concepts/pure-functions) - Writing predictable code
11. [Callbacks](/concepts/callbacks) - The original async pattern
12. [Promises](/concepts/promises) - Modern async handling
13. [async/await](/concepts/async-await) - Clean async syntax
You know JavaScript basics. Now deepen your understanding with these concepts:
<Steps> <Step title="How JavaScript Works"> Understand what's happening under the hood.1. [Call Stack](/concepts/call-stack) - How function execution is tracked
2. [Event Loop](/concepts/event-loop) - The concurrency model
3. [JavaScript Engines](/concepts/javascript-engines) - V8 and how code runs
4. [this, call, apply, bind](/concepts/this-call-apply-bind) - Context binding
5. [Object Creation and Prototypes](/concepts/object-creation-prototypes) - The prototype chain
6. [Factories and Classes](/concepts/factories-classes) - Object creation patterns
7. [Inheritance and Polymorphism](/concepts/inheritance-polymorphism) - OOP in JavaScript
8. [Pure Functions](/concepts/pure-functions) - Side-effect free functions
9. [Higher-Order Functions](/concepts/higher-order-functions) - Functions as values
10. [Currying and Composition](/concepts/currying-composition) - Advanced patterns
11. [Recursion](/concepts/recursion) - Functions that call themselves
12. [Design Patterns](/concepts/design-patterns) - Proven solutions
13. [Error Handling](/concepts/error-handling) - Graceful failure
14. [Clean Code](/concepts/clean-code) - Writing maintainable code
Technical interviews often focus on these concepts. Make sure you can explain them clearly and write code examples.
These come up in almost every JavaScript interview:
| Concept | Why It's Asked | Key Things to Know |
|---|---|---|
| Closures | Tests fundamental understanding | How inner functions access outer variables |
| this keyword | Common source of bugs | The four binding rules |
| Promises | Essential for async code | Chaining, error handling, Promise.all |
| Event Loop | Shows deep understanding | Call stack, task queue, microtasks |
| Prototypes | JavaScript's inheritance | Prototype chain, Object.create |
**Study:** [Scope and Closures](/concepts/scope-and-closures)
**Study:** [this, call, apply, bind](/concepts/this-call-apply-bind)
**Study:** [Promises](/concepts/promises), [async/await](/concepts/async-await), [Event Loop](/concepts/event-loop)
**Study:** [Object Creation and Prototypes](/concepts/object-creation-prototypes)
**Study:** [Data Structures](/concepts/data-structures), [Algorithms and Big O](/concepts/algorithms-big-o)
Want to focus on a specific area? Here are paths organized by topic: