ECMAScript (Background)

An international standard that describes JavaScript.

ECMAScript is an object oriented programming language for performing computations and manipulating computational objects within a host environment.

It defines the central or core capabilities of the language and does not define any of the host defined capabilities.

As defined in the standard, ECMAScript is not intended to be self-sufficient, but should provide core functionality on top of which host objects need to be added.

Scripting languages are intended to be used by both experienced programmers and non-programmers. This means a scripting language will tend to be less formal than a compiled language and will relax the rules a little. Basically you can get away with more things than a compiler would permit.

Scripting languages are generally used to automate existing capabilities of a hosting environment. Those facilities may be already accessible under manual operation via a Graphical User Interface.

ECMAScript was originally designed to be a web scripting language to provide facilities to add dynamics to client-side browser displayed web pages.

Some of the facilities provided by ECMAScript interpreters are similar to those available in other languages such as Java, Perl and C.

Here is an extract from the ECMA second edition standard:

"This ECMA Standard is based on several originating technologies, the most well-known being JavaScript and JScript. The language was invented by Brendan Eich at Netscape and first appeared in the Netscape Navigator version 2.0 browser. It has appeared in all subsequent Netscape Navigator browsers and in all browsers from Microsoft starting with MSIE version 3.0."

Warnings:

See also:Compliance, Conformance, DOM - Level 2, DOM - Level 3, ECMA, ECMAScript - edition 2, ECMAScript - edition 3, ECMAScript version, Glue code, Host features, Implementation, JavaScript language, Native feature, Opera, Overview

insert figure 0115

Cross-references:

ECMA 262 edition 2 - section - 4

ECMA 262 edition 3 - section - 4

Wrox Instant JavaScript - page - 12