ECMAScript Language Specification

This section provides a quick description of the ECMAScript Language Specification and its version history.

The ECMAScript Language Specification is developed and maintained by ECMA (European Computer Manufacturers Association). It defines a scripting language standard based on several originating technologies, the most well known being JavaScript (Netscape) and JScript (Microsoft).

ECMAScript edition history:

1997   ECMA-262 Edition 1 - First edition
1998   ECMA-262 Edition 2 - Editorial changes only
1999   ECMA-262 Edition 3 - Added many new features
   ?   ECMA-262 Edition 4 - Abandoned
2009   ECMA-262 Edition 5 - Adds "strict mode"
2011   ECMA-262 Edition 5.1 - Aligned ISO/IEC 16262:2011
2018   ECMA-262 Edition 9
2019   ECMA-262 Edition 10

ECMA current definition of ECMAScript: ECMAScript is an object-oriented programming language for performing computations and manipulating computational objects within a host environment.

One very important note on the ECMAScript specification is that it does not provide any facilities to interact with the host environment. In another word, a pure ECMAScript code written only with rules and objects described with the specification can only perform computations and manipulate objects in memory. It will not able to exchange data with the host environment.

In order to exchange data with the host environment, each dialect of ECMAScript must extend the specification to add new facilities to interact with the host environment.

For example, The JavaScript dialect of ECMAScript designed for the Firefox browser host environment adds the "document" object and its properties and methods, providing access to the browser's current document.

Another example, The JScript dialect of ECMAScript designed for the Internet Information Server (IIS) Web server host environment adds the "request" object and its properties and methods, providing access to the server's current HTTP request.

If you want to get a copy of the ECMA-262 (ECMAScript Language Specification) Edition 9, please visit http://www.ecma-international.org/publications/standards/Ecma-262.htm.

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