Skip to content

JavaScript Tutorial Getting Started

JavaScript and ECMAScript

Lesson 2 of 258 2 min read By Deepak Paswan Updated Oct 4, 2026

You will see the word ECMAScript in articles, job posts and release notes. It sounds like a different language. It is not.

ECMAScript is the written standard that defines the JavaScript language. JavaScript is the language you write and run. ECMAScript is the document that says exactly how the language must behave, so that every browser and runtime can implement it the same way.

Who decides what goes in

A committee called TC39, made up of people from browser makers, companies and the community, develops the language. New ideas start as proposals and move through stages. Only when a proposal reaches the final stage, and engines have started to implement it, does it become part of the next yearly edition of the standard.

Engines turn the standard into something that runs

Each browser has a JavaScript engine that follows the standard:

EngineUsed in
V8Chrome, Edge, Node.js
SpiderMonkeyFirefox
JavaScriptCoreSafari

What is not ECMAScript

This part matters, because beginners often mix it up. ECMAScript covers the language itself: variables, functions, arrays, objects, promises, classes and modules. It does not cover things the browser adds:

  • document and the DOM
  • fetch()
  • setTimeout() (browsers and Node.js both provide it, but it is not defined by the language standard)
  • localStorage, console, and so on

Those are Web APIs, provided by the browser (see Web APIs vs the JavaScript Language). You use them from JavaScript, but they are separate things.

script.js
JS
// Part of the language: works in any JavaScript environment
const numbers = [3, 1, 2];
console.log(numbers.sort()); // → [1, 2, 3]

// Provided by the browser, not by the language
console.log(typeof document); // → object

When a feature is added to the standard, you will often read “added in ES2022” or “ES2024”. The next lesson explains these names: JavaScript Versions.