Glossary Redirect 2

actual argument
A value that is passed to a function during a function call. When an object is passed, it is passed as an object reference. See also formal argument.
anonymous function
A function without a function name.
A sequence of values. An array is an Array object. Sometimes, the term "array" is used to refer to an object that has array-like qualities, namely it has numerical property names and a length property.
An input to a function. Primitive arguments are passed "by value" - they are sent as copies to the function. Object arguments are passed "by reference" - an object reference to the object is sent to the function.
A primitive with two possible values: true and false. The Boolean object is a wrapper around a boolean primitive.
See function call.
The binding which defines the scope of execution.  In JavaScript, functions create a closure context.
The source code that is written by the programmer.
When used in the context of primitive to object or object to primitive conversions, a typecast.
A synonym for parse, when JavaScript is to be interpreted by an engine.
compile time
The time from when the program is first loaded and until the program is parsed.
deep copy
Document Object Model (DOM)
An API for XML and HTML documents. The DOM is not part of JavaScript. JavaScript scripts within browsers have a binding to the DOM, whereby JavaScript can call DOM methods and otherwise interact with the DOM, and window is the global object.
The JavaScript engine is an interpreter that parses and executes a JavaScript program.
An exception. Syntax error's are explictly specified as "syntax errors".
A condition that interrupts normal code execution. 
To carry out a programming instruction. Happens during runtime.
A value that will translate to false when evaluated in a boolean context (such as when given as the argument of an "if" statement).
formal argument
A placeholder within a function that is assigned an actual argument during a function call. A formal argument acts as a variable local to the function.
A body of code that can be called by other code or by itself, or a variable that refers to the function. When a function is called, arguments are passed to the function as input, and the function can optionally return an output. A function is also an object. See Functions.
function call
An execution of a function's code. A function is passed
function declaration
function expression
function name
An identifier that is declared as part of a function declaration or function expression. The scope this identifier is in depends on whether it is a declaration or expression.
global object
An object that always exists in the global scope.  In most interpreters, this is the window host object.
global scope
The scope which is visible in all other scopes.
global variable
A variable in global scope. Such a variable is a property of the global object.
host objects
A sequence of characters in the code that identifies a variable, function, or property. Identifiers must start with a letter, "$", or "_", and can contain alphanumerical characters, "$", and "_". An identifier differs from a string in that a string is data, while an identifier is part of the code. In JavaScript, there is no way to convert identifiers to strings, but it is possible to parse strings into identifiers in certain cases.
Incapable of being changed.
A number value representing infinity. See Infinity.
inner function
A function within another function, which in turn is denoted as an outer function.
An object created by a constructor is an instance of that constructor.
instance property, instance method
A property or method of all instances of a constructor, defined on that constructor's prototype. See also static property, static method.
An object or data that cannot be directly accessed and operated on by the program, yet is necessary for the program's execution.
interpret, interpreter
See execute.
See array.
local, local scope
A variable or formal argument is local to a scope.
local variable
A variable that is in local scope.
A function that is a property of an object. Since functions themselves are objects, a method is actually an object reference to a function.
Capable of being changed.
A number value representing Not-a-Number. See NaN.
A value which carries no value.  Like undefined, but defined (not automatically assigned).  It is falsy.
A primitive with the value of a real number. Specifically, it has a double precision floating point value. The Number object is a wrapper around a number primitive.
In the context of a constructor, an instance of that constructor. Otherwise, an unordered collection of properties. To be more specific, an object is an associative array, where the keys are property names, and the values are property values. All objects are derived from Object, including arrays, and Object itself is also an object.
object-oriented programming (OOP)
A paradigm in which data is encapsulated within objects and the object itself is operated on, rather than its constituent parts. JavaScript is heavily object-oriented. It follows a prototype-based model.
object reference
A link to an object. Object references can be used as if they were the objects they link to. The concept of object references arises when assigning the same object to more than one property. Each assigned property does not hold a copy of the object. Instead, they hold object references that link to the same object. In practice, this means that if the object is modified, all properties referring to the object reflect the modification.
Reserved syntax, usually comprised of punctuation or sets of punctuation but also alphanumeric characters, that carries out built-in functionality.  For example the addition operator is indicated with + (the plug sign), and the "not" operator is indicated with ! (an exclamation point).
outer function
A function containing a function, which in turn is denoted as an inner function.
See argument.
parent object
The object a property is the property of.
parse, parser
To analyze and convert the program into an internal format which the JavaScript engine can work upon efficiently. In JavaScript, this is done during compile-time. and in certain cases where the parser is invoked, such as during a call to the eval method.
Inputting to a function during a function call, e.g. an argument is passed to a function.
primitive, primitive value
A data that is not an object and does not have any methods. JavaScript has 5 primitive datatypes: string, number, boolean, null, undefined. With the exception of null and undefined, all primitives values have object equivalents which wrap around the primitive values, e.g. a String object wraps around a string primitive. All primitives are immutable.
The whole code to be interpreted and executed. can't think of a good layman's definition that's still relevant to JS...
Part of an object. A property has a name and a value. The name is a string. The value can be a primitive, method, or object reference. It is often stated that a property holds an object - this is shorthand for saying the property holds a reference to the object, as properties cannot directly hold the objects themselves. In the case of the property holding an object, there is a distinction between the property's value and the object due to the nature of object references - the property's value can be changed when it's set to another value, but this does not modify the previously referred object in any way.
An act of a function calling itself.
regular expression, regexp
In the context of objects, an object reference. Otherwise, the JavaScript reference itself.
See execute.
Everything after compile-time.
The current context of execution (see: execute). The context in which values and expressions are "visible," or can be referenced.  If a variable or other expression is not "in the current scope", then it will not be available for use.  Scope can also be layered in a hierarchy, so that child scopes have access to parent scopes, but not vice versa.  A function serves as a closure in JavaScript, and thus creates a scope, so that (for example) a variable defined exclusively within them cannot be accessed from outside that function, nor within other functions.

Saying something is "at the top of the scope" is to say it is executed first.  Saying that Thing A is "below" Thing B in the scope means that Thing A will execute after Thing B.
A synonym for program, typically used when JavaScript is embedded within a document.
static property, static method
A property or method of a constructor, as opposed to an instance property or instance method.
A primitive with an immutable sequence of characters as its value. The String object is a wrapper around a string primitive.
The written text used to write code, including characters, punctuation, and reserved words.  If a framework has "a clean syntax," for example, this usually implies that few characters are needed to write functionality with it, or that the end-result is clear to read and attractive.  If a codebase uses "a lot of syntax," then this means that it contains a large number of characters to achieve its functionality. 
syntax error
An exception caused by the an incorrect use of a pre-defined syntax.  For example, when a } is accidentally left off when defining a function.
A value that will translate to true when evaluated in a boolean context (such as when given as the argument of an "if" statement).
See datatype.
type conversion, typecast
A primitive value automatically assigned to just-declared variables and formal arguments for which there are no actual arguments.
In the context of data or an object wrapper around that data, the primitive value that the object wrapper contains. In the context of a variable or property, something that can be either a primitive or an object reference. can this be more clear?
A placeholder where a value can be stored. In JavaScript, variables are actually properties. Variables are typically accessed through identifiers. See also global variable and local variable. can this be more clear?
wrapper, wrap
An object that contains a primitive and whose sole purpose is to provide methods and properties to operate on that primitive. The wrapper's toString method returns the primitive.

Document Tags and Contributors

Last updated by: Sheppy,