Learn JavaScript

An in-depth course on the basics of JavaScript.

 

Welcome to Learn JavaScript!

Article

An in-depth course on the basics of JavaScript.

Introduction to JavaScript

Article

A brief history of JavaScript and an overview of its basic rules.

Data types and structures

Article

The basic "primitive" data types of JavaScript.

Numbers

Article

Learn how to use JavaScript's number data type.

Strings

Article

Learn how to use JavaScript's string data type.

Booleans

Article

Learn how to use JavaScript's boolean data type.

Null and undefined values

Article

Learn how to use JavaScript's null and undefined data types.

BigInt

Article

Learn how to use JavaScript's BigInt data type.

Symbols

Article

Learn how to use JavaScript's symbol data type.

Variables

Article

Learn how to use JavaScript variables.

Comparison operators

Article

Learn how to use comparison operators.

Control flow

Article

Learn about JavaScript's control flow.

Introduction to functions

Article

An introduction to JavaScript functions.

Function expressions

Article

An introduction to JavaScript function expressions.

The "new" keyword

Article

Call functions using the `new` keyword to create objects.

The "return" keyword

Article

Use the `return` keyword to get more out of your functions.

The "this" keyword

Article

Use the `this` keyword to work with the context your function executes in.

Introduction to objects

Article

Introduction to JavaScript objects.

Property accessors

Article

Learn how to set, alter, and access the properties of an object.

Prototypal inheritance

Article

JavaScript objects and prototypal inheritance.

Property descriptors

Article

Use property descriptors to configure your JavaScript objects.

Indexed collections

Article

Learn how to use indexed collections such as arrays.

Keyed collections

Article

Learn how to use keyed collections such as maps and sets.

Introduction to classes

Article

Learn how to use classes in JavaScript.

Extend classes

Article

The `extends` keyword lets you create subclasses of existing classes.

Class fields and methods

Article

Use class fields and methods to add properties to your classes.

Static initialization blocks

Article

Use static initialization blocks to set or alter static fields.

Appendix

Article Optional

Additional information that might be helpful on your JavaScript journey.