JavaScript Typing Practice Chapters
150 exercises across 15 chapters, ordered from basic syntax to advanced patterns. Each section is real JavaScript code, and your best speed and accuracy are saved per section.
Basic Syntax
Start with basic JavaScript syntax
Simple Variables
Basic Math
Basic Strings
Simple Arrays
Basic Objects
Simple Functions
Basic Conditionals
Simple Loops
Basic Methods
Mixed Basic Practice
Intermediate Concepts
Learn intermediate JavaScript features
Array Methods
Destructuring
Arrow Functions
Template Literals
Spread Operator
Object Methods
Basic Promises
Async/Await
Basic Classes
Mixed Intermediate Practice
Modern Syntax
ES2020+ operators and methods you use every day
Optional Chaining
Nullish Coalescing
Logical Assignment
The at() Method
Flat and FlatMap
Object Entries
Modern String Methods
Structured Clone
Numeric Features
Mixed Modern Practice
Classes & Modules
Class fields, private members, and ES modules
Class Fields
Private Fields
Getters and Setters
Inheritance and super
Static Methods
Named Exports
Default Exports
Dynamic Import
Re-exports
Mixed Class and Module Practice
Maps, Sets & Data
Collections, sorting, grouping, and JSON
Map Basics
Map Iteration
Set Basics
Set Operations
WeakMap Usage
Sorting with Comparators
Reduce Patterns
Grouping Data
JSON Handling
Mixed Collections Practice
Dates, Numbers & Intl
Date handling, formatting, and locale-aware output
Date Basics
Date Math
ISO Strings
Intl.DateTimeFormat
Intl.NumberFormat
Intl.RelativeTimeFormat
Number Formatting
Math Methods
Intl.PluralRules
Mixed Date and Intl Practice
Advanced Features
Master advanced JavaScript concepts
Closures
Generators
Proxy and Reflect
Decorators
Advanced Async Patterns
Advanced Error Handling
Memory Management
Functional Patterns
Design Patterns
Mixed Advanced Practice
Async in Depth
Promise combinators, cancellation, and retry patterns
Promise Chaining
Promise.all
Promise.allSettled
Race and Any
AbortController
Sequential vs Parallel
Timers as Promises
Retry with Backoff
Async Iterators
Mixed Async Practice
Regex & Strings
Regular expressions and serious string work
Regex Literals
Test and Match
MatchAll
Named Capture Groups
Replace with Regex
Replace with a Function
Advanced Split
Regex Flags
Lookahead and Lookbehind
Mixed Regex Practice
DOM Manipulation
Master Document Object Model manipulation
Element Selection
Element Creation
Attribute Manipulation
Style Manipulation
Event Handling
DOM Traversal
Content Modification
Form Handling
Animation
Mixed DOM Practice
Event Handling
Master JavaScript event handling and patterns
Basic Event Handling
Event Listeners
Event Object Properties
Event Propagation
Custom Events
Event Delegation
Keyboard Events
Mouse Events
Form Events
Mixed Events Practice
Web APIs
Learn modern web APIs and browser features
Fetch API
Local Storage
Web Workers
Intersection Observer
Geolocation API
WebSocket API
File API
History API
Canvas API
Mixed APIs Practice
Node.js Basics
Filesystem, process, HTTP, and streams
fs/promises
The path Module
process.argv and env
HTTP Server
EventEmitter
Stream Pipeline
Reading Lines
child_process
import.meta
Mixed Node Practice
Design Patterns
Common JavaScript design patterns and implementations
Singleton Pattern
Factory Pattern
Observer Pattern
Decorator Pattern
Strategy Pattern
Proxy Pattern
Module Pattern
Command Pattern
Chain of Responsibility
Mixed Patterns Practice
Testing Practices
JavaScript testing patterns and best practices
