ECMAScript terminology

Since ECMAScript is the emerging standard for JavaScript, it's best to learn good habits at the start and use its terminology. The ECMAScript standard only defines the most central features of JavaScript. It broadly categorizes an implementation of the language into three parts, to which is added here a fourth, for clarity. This diagram illustrates how these parts go together to form a JavaScript interpreter.

Recall that JavaScript loves to work with other software technologies such as Web browsers. In ECMAScript/JavaScript, a native feature means a feature of the language that is solely to do with JavaScript. Such a feature might be the syntax for mathematical expressions, or variable names. Section A in the diagram above represents all the native features which go together to make ECMAScript. Section B. shows that each JavaScript vendor might add native enhancements to the language to make their product more attractive, but these are still solely to do with JavaScript. Section D shows host features, which are features built into some other software that are not directly to do with JavaScript. In a web browser, these might be HTML documents, links, plug-ins, images or form elements. In a standalone interpreter they might be operating system calls or database functions. Finally, section C shows these host features connected to the native language by a little bit of software 'glue'. In summary, the main software (browser, server or operating system) is said to host the JavaScript interpreter that is all four pieces combined. The ECMAScript standard doesn't find the glue section interesting enough to talk about. Browser vendors like to promote their own proprietary solutions for the glue section using technology brand names like ActiveX and LiveConnect.

© 1997 by Wrox Press. All rights reserved.