JavaScript was created at Netscape Communications in May 1995 and first shipped later that year in betas of Netscape Navigator 2.0. The story of how Brendan Eich wrote JavaScript in ten days is true in its essentials: Eich built the first working prototype in about ten days, under heavy pressure to get a scripting language into the browser before Microsoft's competing products arrived.
Origins: Mocha, LiveScript, JavaScript
Netscape hired Eich in April 1995. He had been told he might put Scheme in the browser, but management changed course after Netscape partnered with Sun Microsystems to bring Java to Navigator. The new scripting language had to "look like Java" so that it would seem like Java's little sibling: Java for serious component builders, the scripting language for designers and part-time programmers.
The prototype was called Mocha. It shipped in beta as LiveScript in September 1995 and was renamed JavaScript in December 1995, when Netscape and Sun announced it jointly. The name was a marketing decision; the trademark is now held by Oracle, which acquired Sun in 2010.
How Brendan Eich wrote JavaScript in ten days
Eich has described the ten-day sprint in interviews and in the 2020 HOPL paper "JavaScript: The First 20 Years", written with Allen Wirfs-Brock. He combined three main influences in a hurry:
- Java for syntax: curly braces,
if/for/while, and aDateobject modelled on Java's. - Scheme for first-class functions and closures.
- Self for prototype-based objects instead of classes.
The speed of the work explains several famous quirks: typeof null returning "object", loose equality with ==, automatic semicolon insertion and confusing type coercion. Once pages depended on these behaviours, they could never be removed without breaking the web.
A short JavaScript example
const langs = [
{ name: "JavaScript", year: 1995 },
{ name: "TypeScript", year: 2012 },
];
async function show() {
for (const { name, year } of langs) {
await new Promise((resolve) => setTimeout(resolve, 200));
console.log(`${name} appeared in ${year}`);
}
}
show();
Arrow functions, destructuring, template literals and async/await all arrived after 2015; the 1995 language had none of them.
Standardisation: ECMAScript
Microsoft reverse-engineered the language as JScript for Internet Explorer 3 in 1996. To avoid fragmentation, Netscape submitted JavaScript to Ecma International, which published the first ECMA-262 standard in June 1997 under the neutral name ECMAScript. The committee responsible today is TC39.
| Year | Edition | Notable change |
|---|---|---|
| 1997 | ES1 | First standard |
| 1999 | ES3 | Regular expressions, try/catch |
| 2008 | ES4 abandoned | Overly ambitious redesign dropped |
| 2009 | ES5 | Strict mode, JSON, array methods |
| 2015 | ES2015 (ES6) | Classes, modules, let/const, promises, arrow functions |
| 2017 | ES2017 | async/await |
Since 2015 a new edition appears every year, each adding a modest set of features.
From page scripts to everything
For years JavaScript was seen as a toy for form validation and rollover images. Several events changed that:
- Ajax: Gmail (2004) and Google Maps (2005) showed full applications running in a browser.
- jQuery (2006) smoothed over browser differences.
- V8, Google Chrome's JIT engine (2008), made JavaScript dramatically faster.
- Node.js, released by Ryan Dahl in 2009, took JavaScript to the server; npm grew into the largest package registry in the world.
- Frameworks such as React, Angular and Vue made it the default for user interfaces, and Electron brought it to desktop apps like Visual Studio Code.
Influence and legacy
JavaScript's object notation became JSON, popularised by Douglas Crockford and now the standard data format for web APIs. TypeScript, released by Microsoft in 2012, added static types and is now used in a large share of professional JavaScript projects. CoffeeScript, Dart and ActionScript all grew from or alongside it, and WebAssembly was designed to run next to it in the browser. Knowing how Brendan Eich wrote JavaScript in ten days helps explain both its flaws and its flexibility: a quick prototype that became the only language every browser understands.
Frequently asked questions
Did Brendan Eich really create JavaScript in only ten days?
He built the first working prototype in about ten days in May 1995. The language continued to change before and after Navigator 2.0 shipped, and standardisation began in 1996. So the core design was written quickly, but JavaScript as we know it took decades to develop.
Why is JavaScript called JavaScript if it is not Java?
Netscape renamed LiveScript to JavaScript in December 1995 as part of its partnership with Sun, which was heavily promoting Java. The name helped marketing but caused lasting confusion. The official standard is called ECMAScript partly to avoid the trademark issue.
Who controls the JavaScript language today?
The language specification is maintained by TC39, a committee at Ecma International made up of browser vendors, companies and invited experts. Proposals move through stages zero to four before being added to the yearly standard. Oracle owns the "JavaScript" trademark but does not control the language.







