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. Created by Brendan Eich in 1995, it is maintained by Ecma International's TC39 technical committee, with related Web APIs maintained by W3C and WHATWG. In 2025, JavaScript was the most widely used programming language on GitHub. However, TypeScript, a statically typed superset of JavaScript that is stricter about types, overtook JavaScript on GitHub by August 2025.
What type of language is JavaScript?
Programming language – artificial language designed to communicate instructions to a machine, more so 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).
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 compiling.
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.
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
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
↑Figure includes TypeScript, a strict syntactical superset of JavaScript that compiles to JavaScript. GitHub's 2025 Octoverse report groups the two languages together when measuring combined usage.
MDN Web Docs – JavaScript – The official and most authoritative JavaScript documentation by Mozilla, including tutorials, references, and examples for all levels.
Eloquent JavaScript – Online Book – Highly regarded free book by Marijn Haverbeke that introduces JavaScript concepts through engaging examples and exercises.
The Modern JavaScript Tutorial – A comprehensive and interactive guide covering modern JavaScript, from basics to advanced topics, maintained and continuously updated by the community.