JavaScript History and Versions

This section provides a quick description of JavaScript language specification standards, ECMAScript, JavaScript, LiveScript, JScript, and history of versions.

JavaScript has one specification and several dialects:

Here is a quick summary of JavaScript history and versions of its dialects:

1994   Netscape 1.0 
199?   Netscape 2.0/JavaScript 1.0   ECMA-262 Edition 1, 1997
1996   IE 3.0/JScript 1.0            ECMA-262 Edition 1, 1997
199?   Netscape 3.0/JavaScript 1.1   ECMA-262 Edition 1, 1997
1997   IE 4.0/JScript 3.0            ECMA-262 Edition 1, 1997
199?   Netscape 4.0/JavaScript 1.2   ECMA-262 Edition 1, 1997
1999   IE 5.0/JScript 5.0            ECMA-262 Edition 1, 1997
2000   Netscape 6.0/JavaScript 1.5   ECMA-262 Edition 3, 1999
2000   IE 5.5/JScript 5.5            ECMA-262 Edition 3, 1999
2001   IE 6.0/JScript 5.6            ECMA-262 Edition 3, 1999
2002   Netscape 7.0/JavaScript 1.5   ECMA-262 Edition 3, 1999
2004   Firefox 1.0                   ECMA-262 Edition 3, 1999
2006   IE 7.0/JScript ?              ECMA-262 Edition 3, 1999
2006   Firefox 2.0/JavaScript 1.7    ECMA-262 Edition 3, 1999
2007   Netscape 8.0/JavaScript ?     ECMA-262 Edition ?
2008   IE 8.0/JScript ?              ECMA-262 Edition ?
200?   Firefox 3.0/JavaScript 1.8    ECMA-262 Edition ?
2011   Firefox 4.0/JavaScript 1.8.5  ECMA-262 Edition ?
                                     ECMA-262 Edition 9, 2018
                                     ECMA-262 Edition 10, 2019
                                     ECMA-262 Edition 11, 2020
                                     ECMA-262 Edition 12, 2021

The latest version of JavaScript specification is ECMA-262 Edition 12. So we should use it as the main reference to learn JavaScript.

Table of Contents

 About This Book

 Introduction to JavaScript

ECMAScript Language Specification and JavaScript Dialects

JavaScript History and Versions

 ECMAScript Language Specification

 Automatic Semicolon Insertion to End Statements

 Data Types, Variables and Expressions

 Flow Control Statements

 Creating, Accessing, and Manipulating Arrays

 Defining and Calling Functions

 Web Browser Supporting JavaScript

 Server-Side and Client-Side Web Scripting

 Introduction to Objects

 Defining Your Own Object Types

 Inheritance of Properties and Methods through the Prototype Object Chain

 'jrunscript' - JavaScript Shell Command from JDK

 Using Functions as "Function" Objects

 Introduction to Built-in Object Types

 W3C's Document Object Model (DOM) Specifications

 AJAX (Asynchronous JavaScript And XML)

 References

 Full Version in PDF/EPUB