1. Introduction
JavaScript was created in 1995 by Brendan Eich at Netscape Communications in just ten days. It was first called Mocha, then briefly LiveScript, before being renamed JavaScript shortly before release. Since then it has evolved from a simple scripting add-on for browsers into a standardized, powerful, general-purpose language.
Cricket analogy: Twenty20 cricket itself was invented quickly by the ECB in 2003 to revitalize the sport, much like Brendan Eich built JavaScript in just ten days in 1995 — a rushed origin that still became foundational, with the format going through name tweaks before T20 stuck.
Understanding JavaScript's history helps explain many of its quirks (like type coercion and legacy syntax) as well as why the language has annual updates today. The evolution is tightly linked to the ECMAScript standard, which governs the official specification that all JavaScript engines must follow.
Cricket analogy: Knowing that cricket's LBW rule evolved awkwardly over a century explains why it still has quirky exceptions today, just as knowing JavaScript's rushed 1995 origin explains oddities like type coercion, both governed by an evolving rulebook — ECMAScript for JS, the MCC Laws for cricket.
2. Syntax
This topic is historical rather than syntax-focused, but here are the key milestones and version names in chronological order:
Cricket analogy: Like a cricket almanac listing every World Cup champion in chronological order rather than explaining batting technique, this section catalogs JavaScript's version milestones year by year instead of teaching syntax.
- 1995 - Created at Netscape as Mocha/LiveScript, renamed JavaScript.
- 1996 - Microsoft creates JScript for Internet Explorer, leading to compatibility issues.
- 1997 - ECMA International standardizes the language as ECMAScript (ES1).
- 1999 - ES3 released, widely adopted; browser wars slow further progress.
- 2009 - ES5 released, adding strict mode, JSON support, and array methods.
- 2015 - ES6 (ES2015) released, a major overhaul: let/const, classes, arrow functions, promises, modules.
- 2016-present - Annual ECMAScript releases (ES2016, ES2017, ...) add incremental features like async/await, optional chaining, and top-level await.
3. Explanation
ECMAScript (ES) is the official specification maintained by TC39, a committee under ECMA International. 'JavaScript' is the most common implementation of that specification, but other implementations exist too (like ActionScript, historically). Browser vendors and Node.js implement ECMAScript through their own JavaScript engines, adding some environment-specific APIs on top (like the DOM in browsers, or the 'fs' module in Node.js).
Cricket analogy: The MCC's Laws of Cricket are the official rulebook, while the specific way IPL matches are officiated is one implementation of those laws, adding tournament-specific rules like powerplays — just as ECMAScript is TC39's spec and JavaScript is its most common implementation, with browsers adding the DOM.
The release of ES6 in 2015 is widely regarded as the most significant turning point in JavaScript's history, modernizing the language with features developers now consider standard, such as block-scoped variables, classes, and native promises for asynchronous code.
Cricket analogy: The 2003 introduction of Twenty20 cricket by the ECB was cricket's biggest turning point, instantly modernizing the sport with innovations fans now consider standard, just as ES6 in 2015 modernized JavaScript with let/const, classes, and promises.
A common misconception is that 'JavaScript' and 'ECMAScript' are two different languages. In reality, ECMAScript is the specification (the rulebook), and JavaScript is the most popular language that implements it. Saying 'ES6 feature' and 'JavaScript feature' often refers to the same thing.
4. Example
// ES5 style (pre-2015)
var es5Greeting = function(name) {
return 'Hello, ' + name + '! (ES5)';
};
// ES6+ style (2015 onward)
const es6Greeting = (name) => `Hello, ${name}! (ES6+)`;
console.log(es5Greeting('Dev'));
console.log(es6Greeting('Dev'));
console.log(typeof es6Greeting);5. Output
Hello, Dev! (ES5)
Hello, Dev! (ES6+)
function6. Key Takeaways
- JavaScript was created by Brendan Eich at Netscape in 1995 in about ten days.
- ECMAScript is the official specification; JavaScript is its most widely used implementation.
- ES6 (2015) was a landmark release introducing let/const, classes, arrow functions, and promises.
- TC39 now ships a new ECMAScript version every year with incremental features.
- Early compatibility issues between Netscape's JavaScript and Microsoft's JScript motivated standardization.
Practice what you learned
1. Who created JavaScript, and in what year?
2. What is the relationship between ECMAScript and JavaScript?
3. Which ECMAScript version is considered the major modernizing release of JavaScript?
4. Why was JavaScript originally standardized as ECMAScript in 1997?
5. How often does TC39 release new ECMAScript versions since 2015?
Was this page helpful?
You May Also Like
Introduction to JavaScript Programming
An overview of what JavaScript is, why it exists, and how it powers interactive behavior on the web and beyond.
Features of JavaScript
A survey of JavaScript's core characteristics: dynamic typing, first-class functions, prototypal inheritance, and asynchronous support.
let, const and Block Scope in JavaScript
How let and const introduced block scoping, the temporal dead zone, and why const does not make objects immutable.
Modules in JavaScript (import/export)
How ES modules split code into reusable files using import and export, and how they differ from CommonJS.
Related Reading
Related Study Notes in Programming
Browse all study notesApache Spark Study Notes
Programming · 30 topics
ProgrammingApache Flink Study Notes
Programming · 30 topics
ProgrammingHadoop Study Notes
Programming · 30 topics
ProgrammingSnowflake Study Notes
Programming · 30 topics
ProgrammingApache Airflow Study Notes
Programming · 30 topics
Programmingdbt (Data Build Tool) Study Notes
Programming · 30 topics