About this document
This document (page, and linked pages) is based on an October 2023 snapshot of (the source of) MDN JavaScript docs.
JavaScript documentation of core language features (pure ECMAScript, for the most part) includes the following:
- The JavaScript guide
- The JavaScript reference
Tutorials
Learn how to program in JavaScript with guides and tutorials.
JavaScript guide
- JavaScript Guide
- : A detailed guide to the JavaScript language, aimed at those with previous programming experience either in JavaScript or another language.
Intermediate
- JavaScript language overview
- : An overview of the basic syntax and semantics of JavaScript for those coming from other programming languages to get up to speed.
- JavaScript data structures
- : Overview of available data structures in JavaScript.
- Equality comparisons and sameness
- : JavaScript provides three different value comparison operations: strict equality using
===
, loose equality using==
, and the Object.is method.
- : JavaScript provides three different value comparison operations: strict equality using
- Enumerability and ownership of properties
- : How different methods that visit a group of object properties one-by-one handle the enumerability and ownership of properties.
- Closures
- : A closure is the combination of a function and the lexical environment within which that function was declared.
Advanced
- Inheritance and the prototype chain
- : Explanation of the widely misunderstood and underestimated prototype-based inheritance.
- Memory Management
- : Memory life cycle and garbage collection in JavaScript.
- The event loop
- : JavaScript has a runtime model based on an "event loop".
Reference
Browse the complete JavaScript reference documentation.
- Standard objects
- Expressions and operators
- : Learn more about the behavior of JavaScript's operators instanceof, typeof, new, this, the operator precedence, and more.
- Statements and declarations
- Functions
- : Learn how to work with JavaScript's functions to develop your applications.
- Classes
- : JavaScript classes are the most appropriate way to do object-oriented programming.