The following outline is provided as an overview of and topical guide to JavaScript:

JavaScript (JS) is a programming language and core technology of the Web, alongside HTML and CSS. It was created by Brendan Eich in 1995. As of 2025, the overwhelming majority of websites (98.9%) uses JavaScript for client side webpage behavior.

What type of language is JavaScript?

  • Programming language — artificial language designed to communicate instructions to a machine, particularly a computer. High-level programming language — a programming language with strong abstraction from the details of the computer, such as having words, making it closer to natural language and easier to use than low level programming languages (which are much more cryptic). Compiled language — source code is converted ("compiled") to an intermediate form in order to be run. Interpreted languagebytecode is executed by a virtual machine, which performs just-in-time compilation. Dynamic programming language — allows various operations to be determined and executed at runtime, such as declaring data types, unlike in static languages, where the structure and types are fixed during compilation. Multi-paradigm programming language — A programming paradigm is a relatively high-level way to conceptualize and structure the implementation of a computer program. JavaScript supports many paradigms. Scripting language — programming language that is used for scripting, which is the act of writing a script, which is a relatively short and simple set of instructions which automate an otherwise manual process. Event-driven programming language — the flow of programs is determined by external events, such as inputs from mice, keyboards, touchpads and touchscreens, and external sensors. Imperative programming language — code directly controls execution flow and state change, explicit statements that change a program state Procedural programming language — organized as procedures that call each other Object-oriented programming language — organized as objects that contain both data structure and associated behavior, uses data structures consisting of data fields and methods together with their interactions (objects) to design programs Class-based programming language — supports object-oriented programming in which inheritance is achieved by defining classes of objects, versus the objects themselves Prototype-based programming language — includes object-oriented programming that avoids classes and implements inheritance via cloning of instances Declarative programming language — its code declares properties of the desired result, but not how to compute it, describes what computation should perform, without specifying detailed state changes Functional programming language — a desired result is declared as the value of a series of function evaluations, uses evaluation of mathematical functions and avoids state and mutable data

History of JavaScript

Javascript fundamentals

Issues and limitations

  • Security issues

Specifications of the language

  • ECMAScript – this specification defines and standardizes the JavaScript language, such as its vernacular, syntax, and so on. ECMAScript version history Ecma International – the non-profit organization responsible for ECMAScript and many other communications standards.

Where JavaScript works (its runtime environments)

JavaScript works primarily in two main types of runtime environments:

Adaptive web design

Adaptive web design

JavaScript toolchain

Libraries

Package managers

Bundlers

Transpilers

Linters and formatters

Testing tools

Build and development tools

General JavaScript concepts

JavaScript dialects and related languages

  • ActionScript – Object-oriented programming language created for the Flash multimedia platform
  • AssemblyScript – TypeScript-based programming language
  • ClojureScript – Dialect of the Lisp programming language on the Java platformPages displaying short descriptions of redirect targets
  • CoffeeScript – Programming language which compiles to JavaScript
  • Dart – Programming language
  • Elm – Functional programming language
  • Embedded JavaScript (EJS) – Webpage templating language using JavaScript
  • Haxe – Cross-platform programming language
  • JavaScript XML (JSX) – JavaScript syntax extension
  • JS++ – Web programming language
  • LiveScript – Functional programming language
  • Nim – Programming language
  • Opa – Programming language for developing scalable web applications
  • PureScript – Strongly typed language that compiles to JavaScript
  • Reason – Syntax extension and toolchain for OCaml
  • ReScript – Programming language that compiles to JavaScript
  • TypeScript – Programming language and superset of JavaScript

JavaScript organizations

JavaScript publications

Books about JavaScript

JavaScript programmers

See also

Outlines of other programming languages

Notes

External links

  • .

Free learning resources

  • – The official and most authoritative JavaScript documentation by Mozilla, including tutorials, references, and examples for all levels.
  • – Highly regarded free book by Marijn Haverbeke that introduces JavaScript concepts through engaging examples and exercises.
  • – A comprehensive and interactive guide covering modern JavaScript, from basics to advanced topics, maintained and continuously updated by the community.
  • – A complete open-source curriculum that covers JavaScript through practical, real-world projects.
  • – A curated list of JavaScript tutorials, books, and courses maintained by the developer community.