All DNA Categories
⚡

JavaScript

Closures, prototypes, event loop, async, currying, generators, proxies

21 topics
ðŸĨš 1ðŸĢ 11ðŸĶ– 8👑 1
ðŸĨš

Egg

Fundamentals

ðŸĢ

Hatchling

Intermediate

1

The JavaScript Event Loop

Understanding the event loop is what separates engineers who debug from engineers who architect. Master the execution model that powers every line of JS.

JavaScriptBrowser APIsPerformance
2

Prototypes & Inheritance

JavaScript's prototype chain is the engine beneath classes, Object.create, and half the 'magic' in the language. Master the mental model interviewers expect.

JavaScriptFundamentalsOOP
3

Prototypes & The JavaScript Object Model

JavaScript doesn't have classical inheritance — it has prototypal delegation. Understanding this distinction is what makes the difference between using the language and understanding it.

JavaScriptOOPFundamentals
4

The this Keyword & Execution Binding

this is the only dynamically scoped construct in JavaScript. Mastering its four binding rules eliminates an entire class of bugs.

JavaScriptFundamentalsOOP
5

Functional Programming Patterns in JavaScript

Pure functions, immutability, composition, currying — functional patterns that make code predictable, testable, and maintainable at scale.

JavaScriptFunctional ProgrammingPatterns
6

ES Modules, Proxy, Generators & Modern JavaScript

Beyond ES6 basics. The modern JavaScript features that power frameworks, tooling, and advanced patterns — from modules to metaprogramming.

JavaScriptES ModulesModern JS
7

Error Handling & Debugging Patterns

Robust error handling separates production-grade code from demo code. Understanding error propagation, custom errors, async error boundaries, and debugging strategies is essential for senior engineers.

JavaScriptError HandlingDebugging
8

Event Propagation, Bubbling & Delegation

Events don't just fire on the target — they travel through the entire DOM tree. Understanding capturing, bubbling, and delegation is critical for building performant event-driven UIs.

JavaScriptDOMEvents
9

DOM, BOM & Web APIs

The DOM is your application's interface to the rendered page. The BOM gives you browser-level control. Web APIs extend JavaScript beyond the language spec. Together they form the runtime platform.

JavaScriptDOMBOM
10

Data Types, Shallow/Deep Copy & Mutability

Primitives are immutable. Objects are references. Misunderstanding this distinction causes some of the most insidious bugs in JavaScript — stale state, unintended mutations, and broken equality checks.

JavaScriptData TypesImmutability
11

Callbacks, Promises & Async/Await

The evolution from callback hell to promises to async/await isn't just syntax sugar — each model has different error handling, composition, and cancellation characteristics.

JavaScriptAsyncPromises
ðŸĶ–

Dinosaur

Advanced

1

Closures, Scope & Execution Context

Closures aren't a feature — they're a consequence of how JavaScript scoping works. Understanding the execution context model unlocks debugging, hooks, and module patterns.

JavaScriptFundamentalsInternals
2

The Event Loop & Async Execution Model

JavaScript is single-threaded but never blocking. The event loop is the scheduling algorithm behind every setTimeout, every Promise, and every React state update.

JavaScriptAsyncBrowser
3

Async Patterns

Promises, async/await, and concurrency control are table stakes for senior frontend roles. Know the patterns that separate production code from tutorial code.

JavaScriptAsyncArchitecture
4

Async Patterns & Concurrency Control

Promises and async/await are just the beginning. Production code needs retry logic, cancellation, rate limiting, and structured concurrency. This is where senior engineers live.

JavaScriptAsyncArchitecture
5

Memory Management & Garbage Collection

Memory leaks in JavaScript are silent killers. Senior engineers understand the GC algorithm, common leak patterns, and the tools to detect them before users notice.

JavaScriptPerformanceInternals
6

Currying & Partial Application

Currying transforms a multi-argument function into a chain of single-argument functions. It's the backbone of composition, reusable utilities, and functional middleware.

JavaScriptFunctional ProgrammingPatterns
7

Generators, Iterators & Symbols

Generators produce values on demand. Iterators define traversal protocols. Symbols create invisible, collision-free property keys. Together they power async flows, custom collections, and metaprogramming.

JavaScriptGeneratorsIterators
8

JavaScript Design Patterns

Design patterns are battle-tested solutions to recurring problems. Singleton, Factory, Observer, Proxy, Module — knowing when and why to apply each one is what separates code that works from code that scales.

JavaScriptDesign PatternsArchitecture
👑

Apex

Architect