Wikipedia:WikiProject JavaScript/Glossary of JavaScript

This is an alphabetized glossary of terms pertaining to the programming language JavaScript, along with their meanings in the context of that language. JavaScript is the programming language of the Web. It is one of the 3 core web development technologies (the other two being HTML and CSS), and it is used on most web pages. Note that JavaScript is not related to Java; they are two distinctly different programming languages. Communication about JavaScript is highly jargonized. The following entries should help in understanding reading material about JavaScript, and serve as search terms for exploring the subject further.

0-9

 * 404
 * same as HTTP 404


 * 404 Not Found
 * same as HTTP 404

A

 * Abstraction
 * a set of software programming techniques used to arrange the complexity of computer systems. It is also the process of removing specific details or attributes in a class or object to focus attention on more general details.


 * Ajax (asynchronous JavaScript and XML)
 * a set of web development techniques using many web technologies on the client-side to create asynchronous Web applications. With Ajax, web applications can send data to and retrieve from a server asynchronously (in the background) without interfering with the display and behavior of the existing page. By decoupling the data interchange layer from the presentation layer, Ajax allows for web pages, and by extension web applications, to change content dynamically without the need to reload the entire page.


 * Alert
 * an alert dialog box, generated in web browser-based JavaScript through the  function.


 * Algorithm
 * set of computer instructions to produce an output or end state from an input or beginning state. What programs are made of.


 * Application development
 * the development of applications, specifically web applications in the context of JavaScript.


 * Application programming interface (API)
 * an interface that allows the abstraction of the underlying implementation of an application.


 * Argument
 * values passed into a function, which can then be accessed by the function through the name of the argument's respective parameter.


 * Array
 * a collection of multiple elements, each identified by an array index, also known as a key.


 * Array constructor
 * a programming constructor used to create array objects in JavaScript.


 * Array literal
 * an array with values fixed in the source code. Array objects created by array literals may also be modified later on.


 * Multi-dimensional array
 * an array where values require at least two indices to be accessed.


 * Asynchrony
 * the occurrence of events which are independent of the main programming flow.


 * Asynchronous module definition (AMD)
 * a specification for JavaScript allowing the asynchronous loading of modules even when the modules are dependent on each other.


 * Attribute
 * HTML attribute, a special word used inside the opening tag to control the tag's behaviour. An attribute is a modifier of an element type.

B

 * Bookmarklet
 * technique of saving JavaScript within a bookmark or hyperlink, so that it can be executed by clicking on it. In many cases, the link can be dragged and dropped to the browser toolbar for easier access.


 * Boolean
 * a data type with only two possible values, true or false, which is used in conditional statements as a means to change control flow.


 * Boolean literal
 * a boolean with a fixed value in source code.


 * Boolean logical operator
 * a set of symbols used to compare two boolean values.

C

 * Camel case
 * or camelCase


 * Cascading Style Sheets


 * Chakra
 * JavaScript engine developed by Microsoft for its Microsoft Edge web browser. It is a fork of the JScript engine used in Internet Explorer.


 * Client-side


 * Client-side JavaScript


 * Comment


 * CommonJS
 * project to create specifications for JavaScript beyond client-side scripting, to expand it into a more full-fledged language. For example, for writing server-side scripts and native desktop applications.


 * CouchDB
 * server database that uses JavaScript as its query language.


 * CSS
 * Cascading Style Sheets.

D

 * Document Object Model
 * the hierarchy (tree) produced by the browser of all the elements of a webpage. By processing the DOM via "methods" (functions stored as object properties, that is, the actions that can be performed on objects), JavaScript can dynamically change the page's HTML.


 * DOM
 * Document Object Model


 * Dynamic HTML
 * predecessor of Unobtrusive JavaScript.

E

 * ECMAScript
 * the specification language upon which JavaScript is based. The terms "EMCAScript" and "JavaScript" are used interchangeably within the field. 'ES' has also been used as a prefix for shorthand names of versions of JavaScript:


 * 'ES5'
 * ECMAScript Fifth Edition, adopted in 2009.


 * 'ES6' / 'ES2015'
 * ECMAScript Sixth Edition, adopted in 2015.


 * 'ES7' / 'ES2016'
 * ECMAScript Seventh Edition, adopted in 2016.


 * 'ES2017'
 * ECMAScript Eighth Edition, adopted in 2017.


 * Element
 * HTML element, an individual component of an HTML document or web page, once this has been parsed into the Document Object Model.


 * Engine (list)
 * "JavaScript engine", a program or library which executes JavaScript code. A JavaScript engine may be a traditional interpreter, or it may utilize just-in-time compilation to bytecode in some manner. A JavaScript engine is most commonly included in web browsers, but is also a key component of JavaScript runtime environments and other software (such as database management systems).


 * Etymology of JavaScript


 * Event
 * action or occurrence recognized by software, often originating asynchronously from the external environment, that may be handled by the software. Computer events can be generated or triggered by the system, by the user (via keystrokes or a mouse clicks), or in other ways.

F

 * First-class function
 * the functions of a language are first-class functions if they are first-class objects. The functions in JavaScript are first-class objects, and therefore, first-class functions.


 * First-class object
 * entity which supports all the operations generally available to other entities (such as data types). These operations typically include being passed as an argument, returned from a function, modified, and assigned to a variable. In JavaScript, functions are first-class objects.


 * Functional programming

G

 * Generator


 * Greasemonkey

H

 * HTML


 * HTML attribute
 * special word used inside the opening tag to control the tag's behaviour. An attribute is a modifier of an element type.


 * HTML element
 * individual component of an HTML document or web page, once this has been parsed into the Document Object Model.


 * HTML tag


 * HTTP 404

J

 * Java
 * unrelated programming language that JavaScript is often confused with due to its name. Despite some superficial similarities, they are two distinct languages.


 * JavaScript engine (list)
 * program or library which executes JavaScript code. A JavaScript engine may be a traditional interpreter, or it may utilize just-in-time compilation to bytecode in some manner. A JavaScript engine is most commonly included in web browsers, but is also a key component of JavaScript runtime environments and other software (such as database management systems).


 * Comparison of JavaScript engines
 * JavaScript Object Notation
 * more commonly known as JSON (see below).


 * JavaScript templating


 * JavaScript trademark


 * jQuery


 * JS Foundation


 * JScript
 * essentially, "JavaScript for Internet Explorer". MicroSoft reverse engineered JavaScript and then named the implementation JScript to avoid infringing upon Sun's ownership of the JavaScript trademark. Since then, Microsoft has switched over to using the name JavaScript to refer to the implementation of JScript used in its Edge browser.


 * JSGI


 * JSON
 * stands for JavaScript Object Notation, an open-standard file format that uses human-readable text to transmit data objects consisting of attribute–value pairs and array data types (or any other serializable value). It is a very common data format used for asynchronous browser–server communication, including as a replacement for XML in some AJAX-style systems.


 * JSONP

M

 * Map

N

 * Nashorn
 * JavaScript engine developed in the Java programming language by Oracle. It is based on the Da Vinci Machine (JSR 292) and was released with Java 8. Its purposes are to enable embedding JavaScript in Java applications, and to develop standalone JavaScript applications.


 * Node.js
 * open-source, cross-platform JavaScript runtime environment for executing JavaScript code server-side, to produce dynamic web page content before the page is sent to the user's web browser. Node.js is built upon the Chrome V8 JavaScript engine.

O

 * Object orientation

P

 * Promise


 * regular expressions


 * Remote scripting


 * Rhino
 * JavaScript engine written fully in Java and managed by the Mozilla Foundation as open source software. It is intended to be used in server-side applications, hence there is no built-in support for the Web browser objects that are commonly associated with JavaScript.


 * Runtime environment

S

 * Seed
 * interpreter and a library of the GNOME project to create standalone applications in JavaScript. It uses the JavaScript engine JavaScriptCore of the WebKit project.


 * Separation of concerns


 * Server-side


 * Server-side JavaScript


 * Comparison of server-side JavaScript solutions
 * Server-side scripting


 * SpiderMonkey – the JavaScript engine in Firefox
 * SquirrelFish
 * bytecode interpreter rewritten from JavaScriptCore.

T

 * Tag


 * Tamarin
 * JavaScript engine still supported as part of Flash Player.


 * Tampermonkey

U

 * UI
 * User interface


 * Unobtrusive JavaScript


 * User interface


 * Userscript
 * JavaScript program written to modify web pages to augment browsing. They are installed in browsers by use of a userscript manager browser extension like Tampermonkey or Greasemonkey. A userscript feature is also available for registered users of Wikipedia, and can augment editing and viewing of that encyclopedia's pages.


 * Userscript manager

V

 * V8
 * JavaScript engine used in Google Chrome, Couchbase Server, MongoDB, and Node.js


 * Vanilla JavaScript
 * jargon for "plain JavaScript", that is, JavaScript not extended by any frameworks or additional libraries. It even has its own prank promotion page, presenting it as the best JavaScript framework.


 * Vanilla JS
 * same as "Vanilla JavaScript"

W

 * Web
 * also "The web", referring to the World Wide Web, the global information space where documents and other web resources are identified by Uniform Resource Locators (URLs), interlinked by hypertext links, and accessed via the Internet.


 * Web accessibility


 * Web Accessibility Initiative


 * Web application


 * Web page


 * Website


 * World Wide Web
 * global information space where documents and other web resources are identified by Uniform Resource Locators (URLs), interlinked by hypertext links, and accessed via the Internet.


 * WWW
 * World Wide Web