JavaScript Exercises
Test your JavaScript skills with exercises from all categories:
Exercises
Introduction3 exercises
Where To3 exercises
Output3 exercises
Statements3 exercises
Syntax3 exercises
Comments3 exercises
Variables7 exercises
Let3 exercises
Const3 exercises
Operators3 exercises
Arithmetic Operators3 exercises
Assignment Operators3 exercises
Data Types3 exercises
Functions5 exercises
Timers4 exercises
Objects4 exercises
Object Properties3 exercises
Object Methods3 exercises
Object this3 exercises
Display Objects3 exercises
Object Constructors3 exercises
Events3 exercises
Continue3 exercises
Control Flow3 exercises
Strings4 exercises
String Methods5 exercises
String Search4 exercises
String Templates3 exercises
Numbers3 exercises
BigInt3 exercises
Number Methods3 exercises
Number Properties3 exercises
Arrays4 exercises
Array Constructor3 exercises
Array Methods3 exercises
Array Search3 exercises
Sorting Arrays3 exercises
Array iteration3 exercises
Array Const3 exercises
Dates3 exercises
Date Formats3 exercises
Date Get Methods3 exercises
Date Set Methods3 exercises
Iterators3 exercises
Generators3 exercises
Math4 exercises
Math Random3 exercises
Booleans3 exercises
Comparisons5 exercises
Comparison Operators3 exercises
Conditionals3 exercises
If Statement3 exercises
If Else3 exercises
Ternary Operator3 exercises
Switch3 exercises
Loops3 exercises
For Loops3 exercises
For In Loops3 exercises
For Of Loops3 exercises
While Loops3 exercises
Break and Continue3 exercises
WeakMap3 exercises
Loop Types3 exercises
Iterables3 exercises
Sets3 exercises
Set Methods3 exercises
Set Logic3 exercises
WeakSet3 exercises
Maps3 exercises
Map Methods3 exercises
RegExp Flags4 exercises
RegExp Character Classes3 exercises
RegExp Metacharacters3 exercises
RegExp Assertions3 exercises
RegExp Groups3 exercises
RegExp Quantifiers3 exercises
RegExp Objects3 exercises
Data Types Overview3 exercises
Primitive Data Types3 exercises
Built-In Objects3 exercises
Symbols4 exercises
TypeOf3 exercises
Undefined3 exercises
NaN3 exercises
toString()3 exercises
toLocaleString()3 exercises
Type Coercion3 exercises
Type Conversion3 exercises
Destructuring3 exercises
Bitwise3 exercises
Regular Expressions3 exercises
Debugging Console3 exercises
Debugging Breakpoints4 exercises
Debugging Errors4 exercises
Debugging Async4 exercises
Style Guide3 exercises
Best Practices3 exercises
Common Mistakes4 exercises
Performance3 exercises
Operator Precedence3 exercises
Error Handling3 exercises
Scope3 exercises
Code Blocks3 exercises
Hoisting3 exercises
Var, Let and Const4 exercises
Strict Mode4 exercises
JSON Syntax3 exercises
JSON Values4 exercises
JSON Parse3 exercises
JSON Stringify3 exercises
Loading JSON3 exercises
Displaying JSON3 exercises
JSON vs XML3 exercises
Web APIs4 exercises
Geolocation API4 exercises
Pointer Events API4 exercises
Web Storage API3 exercises
Validation API4 exercises
Web Workers API4 exercises
Migrate to Temporal5 exercises
Function Definitions4 exercises
Callbacks3 exercises
The this Keyword4 exercises
Function Invocation4 exercises
Function Parameters3 exercises
Function Return3 exercises
Function Arguments5 exercises
Function Expressions5 exercises
Arrow Function4 exercises
Functions Quiz9 exercises
Function Call4 exercises
Function Apply3 exercises
Function Bind3 exercises
Self-Invoking Functions5 exercises
Closures4 exercises
Advanced Functions Quiz11 exercises
Object Definitions3 exercises
this in Objects3 exercises
Object Iterations4 exercises
Object Accessors3 exercises
Object Management3 exercises
Object Protection3 exercises
Object Prototypes3 exercises
Classes3 exercises
Class Inheritance4 exercises
Static Methods3 exercises
Async Programming3 exercises
Async Callbacks3 exercises
Async Promises3 exercises
Async Await3 exercises
Async Parallel3 exercises
Async Event Loop3 exercises
Async Fetch3 exercises
Async Mistakes3 exercises
Async Debugging3 exercises
Async AbortController3 exercises
Async Web Workers3 exercises
Modules3 exercises
HTML-First3 exercises
Progressive Enhancement3 exercises
Native HTML Features4 exercises
CSS Instead of JavaScript3 exercises
Window Object3 exercises
Window Screen3 exercises
Window Location3 exercises
Window History4 exercises
Popup Boxes3 exercises
Cookies3 exercises
Fetch API3 exercises
JSON3 exercises
Silent Errors3 exercises
Error Statements3 exercises
Debugging3 exercises
HTML DOM3 exercises
HTML DOM Methods3 exercises
HTML DOM Animation3 exercises
HTML DOM Document3 exercises
HTML DOM Elements4 exercises
HTML DOM HTML3 exercises
HTML DOM Form Validation3 exercises
HTML DOM CSS4 exercises
Mouse Events3 exercises
Keyboard Events3 exercises
Load Events3 exercises
Event Management3 exercises
HTML DOM Events3 exercises
HTML DOM Event Listener3 exercises
Modules Export3 exercises
Modules Import3 exercises
Module Namespace3 exercises
Dynamic Modules3 exercises
Meta Programming3 exercises
Reflect4 exercises
Proxy3 exercises
Typed Arrays3 exercises
Typed Array Methods3 exercises
ArrayBuffer4 exercises
DataView3 exercises
Atomics3 exercises
HTML DOM Nodes3 exercises
HTML DOM Collections3 exercises
HTML DOM Node List3 exercises
HTML Canvas3 exercises
Plotly.js3 exercises
Chart.js3 exercises
Google Chart3 exercises
D3.js3 exercises
The Exercise
The exercises are a mix of "multiple choice" and "fill in the blanks" questions.
There are between 3 and 9 questions in each category.
The answer can be found in the corresponding tutorial chapter.
If you're stuck, or answer wrong, you can try again or hit the "Show Answer" button to see the correct answer.
Get Certified in coding
Complete the W3Schools coding course, strengthen your knowledge, and earn a certificate you can add to your CV, portfolio, and LinkedIn profile.