Skip to content

Glossary

Each entry is derived from a <dfn> element in the official ECMAScript spec.html (307 terms in this edition) and links to where the term is defined. This glossary page is generated as a reading aid and is not itself part of the specification.

#

𝔽
A conversion from a mathematical value or extended mathematical value x to a Number is denoted as "the Number value for x" or 𝔽(x), and is defined in 6.1.6.1. A conversion from an integer x to a BigInt is denoted as "the BigInt value for … §5.2.5 Mathematical Operations
A conversion from a Number or BigInt x to a mathematical value is denoted as "the mathematical value of x", or ℝ(x). The mathematical value of +0𝔽 and -0𝔽 is the mathematical value 0. The mathematical value of non-finite values is not de… §5.2.5 Mathematical Operations
A conversion from an integer x to a BigInt is denoted as "the BigInt value for x" or ℤ(x). A conversion from a Number or BigInt x to a mathematical value is denoted as "the mathematical value of x", or ℝ(x). The mathematical value of +0𝔽 … §5.2.5 Mathematical Operations

A

abrupt completion abrupt completions
abrupt completion refers to any Completion Record with a [[Type]] value other than normal. §6.2.3 The Completion Record Specification Type
Abstract Closure Abstract Closures
The Abstract Closure specification type is used to refer to algorithm steps together with a collection of values. Abstract Closures are meta-values and are invoked using function application style such as closure(arg1, arg2). Like abstract… §6.2.7 The Abstract Closure Specification Type
abstract operations
In order to facilitate their use in multiple parts of this specification, some algorithms, called abstract operations, are named and written in parameterized functional form so that they may be referenced by name from within other algorith… §5.2.1 Abstract Operations
accessor property accessor properties
An accessor property associates a key value with one or two accessor functions, and a set of Boolean attributes. The accessor functions are used to store or retrieve an ECMAScript language value that is associated with the property. §6.1.7 The Object Type
active function object
The value of the Function component of the running execution context is also called the active function object. §9.4 Execution Contexts
active script or module
At any particular time, scriptOrModule (a Script Record, a Module Record, or null) is the active script or module if all of the following conditions are true: §9.5 Jobs and Host Operations to Enqueue Jobs
agent agents
An agent comprises a set of ECMAScript execution contexts, an execution context stack, a running execution context, an Agent Record, and an executing thread. Except for the executing thread, the constituents of an agent belong exclusively … §9.7 Agents
agent cluster agent clusters
An agent cluster is a maximal set of agents that can communicate by operating on shared memory. §9.8 Agent Clusters
Agent Events Record Agent Events Records
An Agent Events Record is a Record with the following fields. §29.2 Agent Events Records
agent-order slice agent-order slices
Let an agent-order slice be the subset of the agent-order pertaining to a single agent. §29.11 Shared Memory Guidelines
Agent Record Agent Records
An agent comprises a set of ECMAScript execution contexts, an execution context stack, a running execution context, an Agent Record, and an executing thread. Except for the executing thread, the constituents of an agent belong exclusively … §9.7 Agents
agent signifier agent signifiers
An agent signifier is a globally-unique opaque value used to identify an Agent. §9.7 Agents
%AggregateError%
is %AggregateError%. §20.5.7.1 The AggregateError Constructor
%AggregateError.prototype%
is %AggregateError.prototype%. §20.5.7.3 Properties of the AggregateError Prototype Object
AggregateError prototype object
The AggregateError prototype object: §20.5.7.3 Properties of the AggregateError Prototype Object
arguments exotic object arguments exotic objects
An object is an arguments exotic object if its internal methods use the following implementations, with the ones not specified here using those found in 10.1. These methods are installed in CreateMappedArgumentsObject. §10.4.4 Arguments Exotic Objects
%Array%
is %Array%. §23.1.1 The Array Constructor
%ArrayBuffer%
is %ArrayBuffer%. §25.1.3 The ArrayBuffer Constructor
%ArrayBuffer.prototype%
is %ArrayBuffer.prototype%. §25.1.5 Properties of the ArrayBuffer Prototype Object
ArrayBuffer prototype object
The ArrayBuffer prototype object: §25.1.5 Properties of the ArrayBuffer Prototype Object
Array exotic object Array exotic objects
An object is an Array exotic object (or simply, an Array) if its [[DefineOwnProperty]] internal method uses the following implementation, and its other essential internal methods use the definitions found in 10.1. These methods are install… §10.4.2 Array Exotic Objects
array index array indices
An array index is an integer index whose numeric value i is in the range +0𝔽 ≤ i < 𝔽(232 - 1). §6.1.7 The Object Type
%ArrayIteratorPrototype%
The %ArrayIteratorPrototype% object: §23.1.5.2 The %ArrayIteratorPrototype% Object
array-like object array-like objects
An array-like object is any object for which this operation returns a normal completion. §7.3.19 LengthOfArrayLike ( obj )
%Array.prototype%
is %Array.prototype%. §23.1.3 Properties of the Array Prototype Object
Array prototype object
The Array prototype object: §23.1.3 Properties of the Array Prototype Object
Assert
A step that begins with “Assert:” asserts an invariant condition of its algorithm. Such assertions are used to make explicit algorithmic invariants that would otherwise be implicit. Such assertions add no additional semantic requirements a… §5.2 Algorithm Conventions
%AsyncFromSyncIteratorPrototype%
The %AsyncFromSyncIteratorPrototype% object: §27.1.4.2 The %AsyncFromSyncIteratorPrototype% Object
%AsyncFunction%
is %AsyncFunction%. §27.7.1 The AsyncFunction Constructor
%AsyncFunction.prototype%
is %AsyncFunction.prototype%. §27.7.3 Properties of the AsyncFunction Prototype Object
AsyncFunction prototype object
The AsyncFunction prototype object: §27.7.3 Properties of the AsyncFunction Prototype Object
%AsyncGeneratorFunction%
is %AsyncGeneratorFunction%. §27.4.1 The AsyncGeneratorFunction Constructor
%AsyncGeneratorFunction.prototype%
is %AsyncGeneratorFunction.prototype%. §27.4.3 Properties of the AsyncGeneratorFunction Prototype Object
AsyncGeneratorFunction prototype object
The AsyncGeneratorFunction prototype object: §27.4.3 Properties of the AsyncGeneratorFunction Prototype Object
%AsyncGeneratorFunction.prototype.prototype%
is %AsyncGeneratorFunction.prototype.prototype%. §27.6.1 Properties of the AsyncGenerator Prototype Object
AsyncGenerator prototype object
The AsyncGenerator prototype object: §27.6.1 Properties of the AsyncGenerator Prototype Object
AsyncGeneratorRequest AsyncGeneratorRequests
An AsyncGeneratorRequest is a Record value used to store information about how an async generator should be resumed and contains capabilities for fulfilling or rejecting the corresponding promise. §27.6.3.1 AsyncGeneratorRequest Records
@@asyncIterator
Specification Name [[Description]] Value and Purpose @@asyncIterator "Symbol.asyncIterator" A method that returns the default AsyncIterator for an object. Called by the semantics of the for-await-of statement. @@hasInstance "Symbol.hasInst… §6.1.5.1 Well-Known Symbols
%AsyncIteratorPrototype%
The %AsyncIteratorPrototype% object: §27.1.3 The %AsyncIteratorPrototype% Object
%Atomics%
is %Atomics%. §25.4 The Atomics Object

B

%BigInt%
is %BigInt%. §21.2.1 The BigInt Constructor
%BigInt64Array%
Constructor Name and Intrinsic Element Type Element Size Conversion Operation Description Int8Array %Int8Array% Int8 1 ToInt8 8-bit two's complement signed integer Uint8Array %Uint8Array% Uint8 1 ToUint8 8-bit unsigned integer Uint8Clamped… §23.2 TypedArray Objects
%BigInt.prototype%
is %BigInt.prototype%. §21.2.3 Properties of the BigInt Prototype Object
BigInt prototype object
The BigInt prototype object: §21.2.3 Properties of the BigInt Prototype Object
%BigUint64Array%
Constructor Name and Intrinsic Element Type Element Size Conversion Operation Description Int8Array %Int8Array% Int8 1 ToInt8 8-bit two's complement signed integer Uint8Array %Uint8Array% Uint8 1 ToUint8 8-bit unsigned integer Uint8Clamped… §23.2 TypedArray Objects
%Boolean%
is %Boolean%. §20.3.1 The Boolean Constructor
%Boolean.prototype%
is %Boolean.prototype%. §20.3.3 Properties of the Boolean Prototype Object
Boolean prototype object
The Boolean prototype object: §20.3.3 Properties of the Boolean Prototype Object
bound function exotic object bound function exotic objects
An object is a bound function exotic object if its [[Call]] and (if applicable) [[Construct]] internal methods use the following implementations, and its other essential internal methods use the definitions found in 10.1. These methods are… §10.4.1 Bound Function Exotic Objects
break completion break completions
break completion refers to any Completion Record with a [[Type]] value of break. §6.2.3 The Completion Record Specification Type
byte value byte values
A byte value is an integer value in the range 0 through 255, inclusive. A Data Block value is created with a fixed number of bytes that each have the initial value 0. §6.2.8 Data Blocks

C

candidate execution candidate executions
A candidate execution of the evaluation of an agent cluster is a Record with the following fields. §29.4 Candidate Executions
chain production chain productions
A chain production is a production that has exactly one nonterminal symbol on its right-hand side along with zero or more terminal symbols. §5.1.1 Context-Free Grammars
Chosen Value Record Chosen Value Records
A Chosen Value Record is a Record with the following fields. §29.3 Chosen Value Records
clamping
The phrase "the result of clamping x between lower and upper" (where x is an extended mathematical value and lower and upper are mathematical values such that lower ≤ upper) produces lower if x < lower, produces upper if x > upper, and oth… §5.2.5 Mathematical Operations
ClassFieldDefinition Records ClassFieldDefinition Record
Such values are referred to as ClassFieldDefinition Records. §6.2.10 The ClassFieldDefinition Record Specification Type
ClassStaticBlockDefinition Record ClassStaticBlockDefinition Records
A ClassStaticBlockDefinition Record is a Record value used to encapsulate the executable code for a class static initialization block. §6.2.12 The ClassStaticBlockDefinition Record Specification Type
Completion Record Completion Records
The Completion Record specification type is used to explain the runtime propagation of values and control flow such as the behaviour of statements (break, continue, return and throw) that perform nonlocal transfers of control. §6.2.3 The Completion Record Specification Type
conditional keyword conditional keywords
The term conditional keyword, or contextual keyword, is sometimes used to refer to the keywords that fall in the last three categories, and thus can be used as identifiers in some contexts and as keywords in others. §12.6.2 Keywords and Reserved Words
consistent comparator
An abstract closure or function comparator is a consistent comparator for a set of values S if all of the requirements below are met for all values a, b, and c (possibly the same value) in the set S: The notation a <C b means comparator(a,… §23.1.3.28.1 SortIndexedProperties ( obj, len, SortCompare )
constructor constructors
A constructor is an object that supports the [[Construct]] internal method. Every object that supports [[Construct]] must support [[Call]]; that is, every constructor must be a function object. Therefore, a constructor may also be referred… §6.1.7.2 Object Internal Methods and Internal Slots
contention
EnterCriticalSection has contention when an agent attempting to enter the critical section must wait for another agent to leave it. When there is no contention, FIFO order of EnterCriticalSection calls is observable. When there is contenti… §25.4.2.4 EnterCriticalSection ( WL )
contextual keyword contextual keywords
The term conditional keyword, or contextual keyword, is sometimes used to refer to the keywords that fall in the last three categories, and thus can be used as identifiers in some contexts and as keywords in others. §12.6.2 Keywords and Reserved Words
continue completion continue completions
continue completion refers to any Completion Record with a [[Type]] value of continue. §6.2.3 The Completion Record Specification Type
covered
We refer to that instance of N (a Parse Node, unique for a given P) as "the N that is covered by P". §5.1.4 The Syntactic Grammar
critical section critical sections
Each WaiterList has a critical section that controls exclusive access to that WaiterList during evaluation. Only a single agent may enter a WaiterList's critical section at one time. Entering and leaving a WaiterList's critical section is … §25.4.1 WaiterList Objects
Cyclic Module Record Cyclic Module Records
A Cyclic Module Record is used to represent information about a module that can participate in dependency cycles with other modules that are subclasses of the Cyclic Module Record type. Module Records that are not subclasses of the Cyclic … §16.2.1.5 Cyclic Module Records

D

Data Block Data Blocks
The Data Block specification type is used to describe a distinct and mutable sequence of byte-sized (8 bit) numeric values. A byte value is an integer value in the range 0 through 255, inclusive. A Data Block value is created with a fixed … §6.2.8 Data Blocks
data property data properties
A data property associates a key value with an ECMAScript language value and a set of Boolean attributes. §6.1.7 The Object Type
%DataView%
is %DataView%. §25.3.2 The DataView Constructor
%DataView.prototype%
is %DataView.prototype%. §25.3.4 Properties of the DataView Prototype Object
DataView prototype object
The DataView prototype object: §25.3.4 Properties of the DataView Prototype Object
%Date%
is %Date%. §21.4.2 The Date Constructor
%Date.prototype%
is %Date.prototype%. §21.4.4 Properties of the Date Prototype Object
Date prototype object
The Date prototype object: §21.4.4 Properties of the Date Prototype Object
declarative Environment Record declarative Environment Records
Each declarative Environment Record is associated with an ECMAScript program scope containing variable, constant, let, class, module, import, and/or function declarations. A declarative Environment Record binds the set of identifiers defin… §9.1.1.1 Declarative Environment Records
%decodeURI%
The decodeURI function is the %decodeURI% intrinsic object. When the decodeURI function is called with one argument encodedURI, the following steps are taken: §19.2.6.2 decodeURI ( encodedURI )
%decodeURIComponent%
The decodeURIComponent function is the %decodeURIComponent% intrinsic object. When the decodeURIComponent function is called with one argument encodedURIComponent, the following steps are taken: §19.2.6.3 decodeURIComponent ( encodedURIComponent )
direct eval direct evals
A CallExpression evaluation that executes step 6.a.vi is a direct eval. §13.3.6.1 Runtime Semantics: Evaluation
Directive Prologue Directive Prologues
A Directive Prologue is the longest sequence of ExpressionStatements occurring as the initial StatementListItems or ModuleItems of a FunctionBody, a ScriptBody, or a ModuleBody and where each ExpressionStatement in the sequence consists en… §11.2.1 Directive Prologues and the Use Strict Directive

E

early error early errors
An early error is an error that can be detected and reported prior to the evaluation of any construct in the Script containing the error. The presence of an early error prevents the evaluation of the construct. An implementation must repor… §17 Error Handling and Language Extensions
Early Error Rule
A special kind of static semantic rule is an Early Error Rule. Early error rules define early error conditions (see clause 17) that are associated with specific grammar productions. Evaluation of most early error rules are not explicitly i… §5.2.4 Static Semantics
ECMAScript language type ECMAScript language types
An ECMAScript language type corresponds to values that are directly manipulated by an ECMAScript programmer using the ECMAScript language. The ECMAScript language types are Undefined, Null, Boolean, String, Symbol, Number, BigInt, and Obje… §6.1 ECMAScript Language Types
ECMAScript language value ECMAScript language values
An ECMAScript language value is a value that is characterized by an ECMAScript language type. §6.1 ECMAScript Language Types
empty candidate execution empty candidate executions
An empty candidate execution is a candidate execution Record whose fields are empty Lists and Relations. §29.4 Candidate Executions
%encodeURI%
The encodeURI function is the %encodeURI% intrinsic object. When the encodeURI function is called with one argument uri, the following steps are taken: §19.2.6.4 encodeURI ( uri )
%encodeURIComponent%
The encodeURIComponent function is the %encodeURIComponent% intrinsic object. When the encodeURIComponent function is called with one argument uriComponent, the following steps are taken: §19.2.6.5 encodeURIComponent ( uriComponent )
Environment Record Environment Records
Environment Record is a specification type used to define the association of Identifiers to specific variables and functions, based upon the lexical nesting structure of ECMAScript code. Usually an Environment Record is associated with som… §9.1 Environment Records
%Error%
is %Error%. §20.5.1 The Error Constructor
%Error.prototype%
is %Error.prototype%. §20.5.3 Properties of the Error Prototype Object
Error prototype object
The Error prototype object: §20.5.3 Properties of the Error Prototype Object
%escape%
The escape function is the %escape% intrinsic object. When the escape function is called with one argument string, the following steps are taken: §B.2.1.1 escape ( string )
%eval%
The eval function is the %eval% intrinsic object. When the eval function is called with one argument x, the following steps are taken: §19.2.1 eval ( x )
%EvalError%
The EvalError constructor is %EvalError%. §20.5.5.1 EvalError
executing thread executing threads
An agent comprises a set of ECMAScript execution contexts, an execution context stack, a running execution context, an Agent Record, and an executing thread. Except for the executing thread, the constituents of an agent belong exclusively … §9.7 Agents
execution context execution contexts
An execution context is a specification device that is used to track the runtime evaluation of code by an ECMAScript implementation. At any point in time, there is at most one execution context per agent that is actually executing code. Th… §9.4 Execution Contexts
execution context stack execution context stacks
The execution context stack is used to track execution contexts. The running execution context is always the top element of this stack. A new execution context is created whenever control is transferred from the executable code associated … §9.4 Execution Contexts
exotic object exotic objects
An exotic object is an object that is not an ordinary object. §6.1.7.2 Object Internal Methods and Internal Slots
ExportEntry Record ExportEntry Records
An ExportEntry Record is a Record that digests information about a single declarative export. Each ExportEntry Record has the fields defined in Table 60: §16.2.1.6 Source Text Module Records
extended mathematical value
A conversion from a mathematical value or extended mathematical value x to a Number is denoted as "the Number value for x" or 𝔽(x), and is defined in 6.1.6.1. A conversion from an integer x to a BigInt is denoted as "the BigInt value for … §5.2.5 Mathematical Operations

F

%FinalizationRegistry%
is %FinalizationRegistry%. §26.2.1 The FinalizationRegistry Constructor
FinalizationRegistry FinalizationRegistrys
The FinalizationRegistry constructor: §26.2.1 The FinalizationRegistry Constructor
%FinalizationRegistry.prototype%
is %FinalizationRegistry.prototype%. §26.2.3 Properties of the FinalizationRegistry Prototype Object
FinalizationRegistry prototype
The FinalizationRegistry prototype object: §26.2.3 Properties of the FinalizationRegistry Prototype Object
%Float32Array%
Constructor Name and Intrinsic Element Type Element Size Conversion Operation Description Int8Array %Int8Array% Int8 1 ToInt8 8-bit two's complement signed integer Uint8Array %Uint8Array% Uint8 1 ToUint8 8-bit unsigned integer Uint8Clamped… §23.2 TypedArray Objects
%Float64Array%
Constructor Name and Intrinsic Element Type Element Size Conversion Operation Description Int8Array %Int8Array% Int8 1 ToInt8 8-bit two's complement signed integer Uint8Array %Uint8Array% Uint8 1 ToUint8 8-bit unsigned integer Uint8Clamped… §23.2 TypedArray Objects
%ForInIteratorPrototype%
The %ForInIteratorPrototype% object: §14.7.5.10.2 The %ForInIteratorPrototype% Object
fully populated Property Descriptor
A fully populated Property Descriptor is one that is either an accessor Property Descriptor or a data Property Descriptor and that has all of the corresponding fields defined in Table 3. §6.2.5 The Property Descriptor Specification Type
%Function%
is %Function%. §20.2.1 The Function Constructor
function Environment Record function Environment Records
A function Environment Record is a declarative Environment Record that is used to represent the top-level scope of a function and, if the function is not an ArrowFunction, provides a this binding. If a function is not an ArrowFunction func… §9.1.1.3 Function Environment Records
function object function objects
A function object is an object that supports the [[Call]] internal method. A constructor is an object that supports the [[Construct]] internal method. Every object that supports [[Construct]] must support [[Call]]; that is, every construct… §6.1.7.2 Object Internal Methods and Internal Slots
%Function.prototype%
is %Function.prototype%. §20.2.3 Properties of the Function Prototype Object
Function prototype object
The Function prototype object: §20.2.3 Properties of the Function Prototype Object

G

%GeneratorFunction%
is %GeneratorFunction%. §27.3.1 The GeneratorFunction Constructor
%GeneratorFunction.prototype%
is %GeneratorFunction.prototype% (see Figure 6). §27.3.3 Properties of the GeneratorFunction Prototype Object
GeneratorFunction prototype object
The GeneratorFunction prototype object: §27.3.3 Properties of the GeneratorFunction Prototype Object
%GeneratorFunction.prototype.prototype%
is %GeneratorFunction.prototype.prototype%. §27.5.1 Properties of the Generator Prototype Object
Generator prototype object
The Generator prototype object: §27.5.1 Properties of the Generator Prototype Object
global Environment Record global Environment Records
A global Environment Record is used to represent the outer most scope that is shared by all of the ECMAScript Script elements that are processed in a common realm. A global Environment Record provides the bindings for built-in globals (cla… §9.1.1.4 Global Environment Records
global object global objects
The global object: §19 The Global Object
goal symbol goal symbols
Starting from a sentence consisting of a single distinguished nonterminal, called the goal symbol, a given context-free grammar specifies a language, namely, the (perhaps infinite) set of possible sequences of terminal symbols that can res… §5.1.1 Context-Free Grammars

H

@@hasInstance
@@hasInstance "Symbol.hasInstance" A method that determines if a constructor object recognizes an object as one of the constructor's instances. Called by the semantics of the instanceof operator. @@isConcatSpreadable "Symbol.isConcatSpread… §6.1.5.1 Well-Known Symbols
high-surrogate code unit high-surrogate code units
Such operations apply special treatment to every code unit with a numeric value in the inclusive range 0xD800 to 0xDBFF (defined by the Unicode Standard as a leading surrogate, or more formally as a high-surrogate code unit) and every code… §6.1.4 The String Type
host hosts
A host is an external source that further defines facilities listed in Annex D but does not further define other implementation-defined or implementation-approximated facilities. In informal use, a host refers to the set of all implementat… §4.2 Hosts and Implementations
host-defined
A host-defined facility is one that defers its definition to an external source without further qualification and is listed in Annex D. Implementations that are not hosts may also provide definitions for host-defined facilities. §4.2 Hosts and Implementations
host environment host environments
A host environment is a particular choice of definition for all host-defined facilities. A host environment typically includes objects or functions which allow obtaining input and providing output as host-defined properties of the global o… §4.2 Hosts and Implementations
host hook host hooks
A host hook is an abstract operation that is defined in whole or in part by an external source. All host hooks must be listed in Annex D. A host hook must conform to at least the following requirements: §4.2 Hosts and Implementations
hypothetical WeakRef-oblivious
For some set of objects S, a hypothetical WeakRef-oblivious execution with respect to S is an execution whereby the abstract operation WeakRefDeref of a WeakRef whose referent is an element of S always returns undefined. §9.10.2 Liveness

I

IEEE 754-2019
IEEE 754-2019: IEEE Standard for Floating-Point Arithmetic. Institute of Electrical and Electronic Engineers, New York (2019) Note There are no normative changes between IEEE 754-2008 and IEEE 754-2019 that affect the ECMA-262 specificatio… §Annex H (informative) Bibliography
immutable prototype exotic object immutable prototype exotic objects
An object is an immutable prototype exotic object if its [[SetPrototypeOf]] internal method uses the following implementation. (Its other essential internal methods may use any implementation, depending on the specific immutable prototype … §10.4.7 Immutable Prototype Exotic Objects
implementation-approximated
An implementation-approximated facility is one that defers its definition to an external source while recommending an ideal behaviour. While conforming implementations are free to choose any behaviour within the constraints put forth by th… §4.2 Hosts and Implementations
implementation-defined
An implementation-defined facility is one that defers its definition to an external source without further qualification. This specification does not make any recommendations for particular behaviours, and conforming implementations are fr… §4.2 Hosts and Implementations
ImportEntry Record ImportEntry Records
An ImportEntry Record is a Record that digests information about a single declarative import. Each ImportEntry Record has the fields defined in Table 58: §16.2.1.6 Source Text Module Records
%Int16Array%
Constructor Name and Intrinsic Element Type Element Size Conversion Operation Description Int8Array %Int8Array% Int8 1 ToInt8 8-bit two's complement signed integer Uint8Array %Uint8Array% Uint8 1 ToUint8 8-bit unsigned integer Uint8Clamped… §23.2 TypedArray Objects
%Int32Array%
Constructor Name and Intrinsic Element Type Element Size Conversion Operation Description Int8Array %Int8Array% Int8 1 ToInt8 8-bit two's complement signed integer Uint8Array %Uint8Array% Uint8 1 ToUint8 8-bit unsigned integer Uint8Clamped… §23.2 TypedArray Objects
%Int8Array%
Constructor Name and Intrinsic Element Type Element Size Conversion Operation Description Int8Array %Int8Array% Int8 1 ToInt8 8-bit two's complement signed integer Uint8Array %Uint8Array% Uint8 1 ToUint8 8-bit unsigned integer Uint8Clamped… §23.2 TypedArray Objects
integer integers
When the term integer is used in this specification, it refers to a mathematical value which is in the set of integers, unless otherwise stated. When the term integral Number is used in this specification, it refers to a Number value whose… §5.2.5 Mathematical Operations
integer index integer indices
An integer index is a String-valued property key that is a canonical numeric String (see 7.1.21) and whose numeric value is either +0𝔽 or a positive integral Number ≤ 𝔽(253 - 1). An array index is an integer index whose numeric value i i… §6.1.7 The Object Type
Integer-Indexed exotic object Integer-Indexed exotic objects
An object is an Integer-Indexed exotic object if its [[GetOwnProperty]], [[HasProperty]], [[DefineOwnProperty]], [[Get]], [[Set]], [[Delete]], and [[OwnPropertyKeys]] internal methods use the definitions in this section, and its other esse… §10.4.5 Integer-Indexed Exotic Objects
integral Number integral Numbers
When the term integral Number is used in this specification, it refers to a Number value whose mathematical value is in the set of integers. §5.2.5 Mathematical Operations
@@isConcatSpreadable
@@isConcatSpreadable "Symbol.isConcatSpreadable" A Boolean valued property that if true indicates that an object should be flattened to its array elements by Array.prototype.concat. @@iterator "Symbol.iterator" A method that returns the de… §6.1.5.1 Well-Known Symbols
%isFinite%
The isFinite function is the %isFinite% intrinsic object. When the isFinite function is called with one argument number, the following steps are taken: §19.2.2 isFinite ( number )
[[IsHTMLDDA]] internal slot
An [[IsHTMLDDA]] internal slot may exist on host-defined objects. Objects with an [[IsHTMLDDA]] internal slot behave like undefined in the ToBoolean and IsLooselyEqual abstract operations and when used as an operand for the typeof operator. §B.3.6 The [[IsHTMLDDA]] Internal Slot
%isNaN%
The isNaN function is the %isNaN% intrinsic object. When the isNaN function is called with one argument number, the following steps are taken: §19.2.3 isNaN ( number )
@@iterator
@@iterator "Symbol.iterator" A method that returns the default Iterator for an object. Called by the semantics of the for-of statement. @@match "Symbol.match" A regular expression method that matches the regular expression against a string… §6.1.5.1 Well-Known Symbols
%IteratorPrototype%
The %IteratorPrototype% object: §27.1.2 The %IteratorPrototype% Object
Iterator Record Iterator Records
An Iterator Record is a Record value used to encapsulate an Iterator or AsyncIterator along with the next method. §7.4.1 Iterator Records

J

Job Jobs
A Job is an Abstract Closure with no parameters that initiates an ECMAScript computation when no other ECMAScript computation is currently in progress. §9.5 Jobs and Host Operations to Enqueue Jobs
JobCallback Record JobCallback Records
A JobCallback Record is a Record value used to store a function object and a host-defined value. Function objects that are invoked via a Job enqueued by the host may have additional host-defined context. To propagate the state, Job Abstrac… §9.5.1 JobCallback Records
%JSON%
is %JSON%. §25.5 The JSON Object

K

keyword keywords
A keyword is a token that matches IdentifierName, but also has a syntactic use; that is, it appears literally, in a fixed width font, in some syntactic production. The keywords of ECMAScript include if, while, async, await, and many others. §12.6.2 Keywords and Reserved Words

L

leading surrogate leading surrogates
Such operations apply special treatment to every code unit with a numeric value in the inclusive range 0xD800 to 0xDBFF (defined by the Unicode Standard as a leading surrogate, or more formally as a high-surrogate code unit) and every code… §6.1.4 The String Type
Legacy
A conforming implementation of ECMAScript must implement Legacy subclauses, unless they are also marked as Normative Optional. All of the language features and behaviours specified within Legacy subclauses have one or more undesirable char… §2.1 Example Normative Optional Clause Heading
List Lists
The List type is used to explain the evaluation of argument lists (see 13.3.8) in new expressions, in function calls, and in other algorithms where a simple ordered list of values is needed. Values of the List type are simply ordered seque… §6.2.1 The List and Record Specification Types
list-concatenation
In this specification, the phrase "the list-concatenation of A, B, ..." (where each argument is a possibly empty List) denotes a new List value whose elements are the concatenation of the elements (in order) of each of the arguments (in or… §6.2.1 The List and Record Specification Types
live
At any point during evaluation, a set of objects S is considered live if either of the following conditions is met: §9.10.2 Liveness
low-surrogate code unit low-surrogate code units
Such operations apply special treatment to every code unit with a numeric value in the inclusive range 0xD800 to 0xDBFF (defined by the Unicode Standard as a leading surrogate, or more formally as a high-surrogate code unit) and every code… §6.1.4 The String Type

M

%Map%
is %Map%. §24.1.1 The Map Constructor
%MapIteratorPrototype%
The %MapIteratorPrototype% object: §24.1.5.2 The %MapIteratorPrototype% Object
%Map.prototype%
is %Map.prototype%. §24.1.3 Properties of the Map Prototype Object
Map prototype object
The Map prototype object: §24.1.3 Properties of the Map Prototype Object
@@match
@@match "Symbol.match" A regular expression method that matches the regular expression against a string. Called by the String.prototype.match method. @@matchAll "Symbol.matchAll" A regular expression method that returns an iterator, that y… §6.1.5.1 Well-Known Symbols
@@matchAll
@@matchAll "Symbol.matchAll" A regular expression method that returns an iterator, that yields matches of the regular expression against a string. Called by the String.prototype.matchAll method. @@replace "Symbol.replace" A regular express… §6.1.5.1 Well-Known Symbols
Match Record Match Records
A Match Record is a Record value used to encapsulate the start and end indices of a regular expression match or capture. §22.2.5.2.5 Match Records
%Math%
is %Math%. §21.3 The Math Object
mathematical value
Conversions between mathematical values and Numbers or BigInts are always explicit in this document. A conversion from a mathematical value or extended mathematical value x to a Number is denoted as "the Number value for x" or 𝔽(x), and i… §5.2.5 Mathematical Operations
memory model
The memory consistency model, or memory model, specifies the possible orderings of Shared Data Block events, arising via accessing TypedArray instances backed by a SharedArrayBuffer and via methods on the Atomics object. When the program h… §29 Memory Model
module Environment Record module Environment Records
A module Environment Record is a declarative Environment Record that is used to represent the outer scope of an ECMAScript Module. In additional to normal mutable and immutable bindings, module Environment Records also provide immutable im… §9.1.1.5 Module Environment Records
module namespace exotic object module namespace exotic objects
An object is a module namespace exotic object if its [[GetPrototypeOf]], [[SetPrototypeOf]], [[IsExtensible]], [[PreventExtensions]], [[GetOwnProperty]], [[DefineOwnProperty]], [[HasProperty]], [[Get]], [[Set]], [[Delete]], and [[OwnProper… §10.4.6 Module Namespace Exotic Objects
Module Record Module Records
A Module Record encapsulates structural information about the imports and exports of a single module. This information is used to link the imports and exports of sets of connected modules. A Module Record includes four fields that are only… §16.2.1.4 Abstract Module Records
must cover
Typically, an early error rule will then state that, in certain contexts, "P must cover an N", where P is a Parse Node (an instance of the generalized production) and N is a nonterminal from the supplemental grammar. This means: §5.1.4 The Syntactic Grammar

N

NativeError prototype object
Each NativeError prototype object: §20.5.6.3 Properties of the NativeError Prototype Objects
non-strict code
ECMAScript code that is not strict mode code is called non-strict code. §11.2.2 Strict Mode Code
non-strict function non-strict functions
One whose code is not strict mode code is called a non-strict function. §10.2 ECMAScript Function Objects
normal completion normal completions
normal completion refers to any Completion Record with a [[Type]] value of normal. §6.2.3 The Completion Record Specification Type
normal completion containing normal completions containing
a normal completion containing some type of value refers to a normal completion that has a value of that type in its [[Value]] field. §6.2.3 The Completion Record Specification Type
Normative Optional
A conforming implementation of ECMAScript may choose to implement or not implement Normative Optional subclauses. If any Normative Optional behaviour is implemented, all of the behaviour in the containing Normative Optional clause must be … §2 Conformance
%Number%
is %Number%. §21.1.1 The Number Constructor
%Number.prototype%
is %Number.prototype%. §21.1.3 Properties of the Number Prototype Object
Number prototype object
The Number prototype object: §21.1.3 Properties of the Number Prototype Object
Number value
In this specification, the phrase “the Number value for x” where x represents an exact real mathematical quantity (which might even be an irrational number such as π) means a Number value chosen in the following manner. Consider the set of… §6.1.6.1 The Number Type

O

%Object%
is %Object%. §20.1.1 The Object Constructor
object Environment Record object Environment Records
Each object Environment Record is associated with an object called its binding object. An object Environment Record binds the set of string identifier names that directly correspond to the property names of its binding object. Property key… §9.1.1.2 Object Environment Records
%Object.prototype%
is %Object.prototype%. §20.1.3 Properties of the Object Prototype Object
Object prototype object
The Object prototype object: §20.1.3 Properties of the Object Prototype Object
ordinary object ordinary objects
An ordinary object is an object that satisfies all of the following criteria: §6.1.7.2 Object Internal Methods and Internal Slots

P

%parseFloat%
The parseFloat function is the %parseFloat% intrinsic object. When the parseFloat function is called with one argument string, the following steps are taken: §19.2.4 parseFloat ( string )
%parseInt%
The parseInt function is the %parseInt% intrinsic object. When the parseInt function is called, the following steps are taken: §19.2.5 parseInt ( string, radix )
Parse Node Parse Nodes
When a parse is successful, it constructs a parse tree, a rooted tree structure in which each node is a Parse Node. Each Parse Node is an instance of a symbol in the grammar; it represents a span of the source text that can be derived from… §5.1.4 The Syntactic Grammar
possible read values
Let possible read values of a read event be the set of all values of ValueOfReadEvent for that event across all valid executions. §29.11 Shared Memory Guidelines
prepared to evaluate ECMAScript code
At any particular time, an execution is prepared to evaluate ECMAScript code if all of the following conditions are true: §9.5 Jobs and Host Operations to Enqueue Jobs
PrivateElements PrivateElement
Such values are referred to as PrivateElements. §6.2.9 The PrivateElement Specification Type
PrivateEnvironment Record PrivateEnvironment Records
A PrivateEnvironment Record is a specification mechanism used to track Private Names based upon the lexical nesting structure of ClassDeclarations and ClassExpressions in ECMAScript code. They are similar to, but distinct from, Environment… §9.2 PrivateEnvironment Records
Private Name Private Names
The Private Name specification type is used to describe a globally unique value (one which differs from any other Private Name, even if they are otherwise indistinguishable) which represents the key of a private class element (field, metho… §6.2.11 Private Names
%Promise%
is %Promise%. §27.2.3 The Promise Constructor
PromiseCapability Record PromiseCapability Records
A PromiseCapability Record is a Record value used to encapsulate a Promise or promise-like object along with the functions that are capable of resolving or rejecting that promise. PromiseCapability Records are produced by the NewPromiseCap… §27.2.1.1 PromiseCapability Records
%Promise.prototype%
is %Promise.prototype%. §27.2.5 Properties of the Promise Prototype Object
Promise prototype object
The Promise prototype object: §27.2.5 Properties of the Promise Prototype Object
Property Descriptor Property Descriptors
The Property Descriptor type is used to explain the manipulation and reification of Object property attributes. A Property Descriptor is a Record with zero or more fields, where each field's name is an attribute name and its value is a cor… §6.2.5 The Property Descriptor Specification Type
property key property keys
A property key value is either an ECMAScript String value or a Symbol value. All String and Symbol values, including the empty String, are valid as property keys. A property name is a property key that is a String value. §6.1.7 The Object Type
property name
A property name is a property key that is a String value. §6.1.7 The Object Type
%Proxy%
is %Proxy%. §28.2.1 The Proxy Constructor
Proxy exotic object Proxy exotic objects
An object is a Proxy exotic object if its essential internal methods (including [[Call]] and [[Construct]], if applicable) use the definitions in this section. These internal methods are installed in ProxyCreate. §10.5 Proxy Object Internal Methods and Internal Slots

R

Range Ranges
A Range is an ordered pair (startIndex, endIndex) that represents the range of characters included in a capture, where startIndex is an integer representing the start index (inclusive) of the range within Input, and endIndex is an integer … §22.2.2.1 Notation
%RangeError%
The RangeError constructor is %RangeError%. §20.5.5.2 RangeError
read-modify-write modification function read-modify-write modification functions
A read-modify-write modification function is a mathematical function that is notationally represented as an abstract closure that takes two Lists of byte values as arguments and returns a List of byte values. These abstract closures satisf… §25.1.1 Notation
ReadModifyWriteSharedMemory
A Shared Data Block event is either a ReadSharedMemory, WriteSharedMemory, or ReadModifyWriteSharedMemory Record. §29.1 Memory Model Fundamentals
ReadSharedMemory
A Shared Data Block event is either a ReadSharedMemory, WriteSharedMemory, or ReadModifyWriteSharedMemory Record. §29.1 Memory Model Fundamentals
realm realms
Before it is evaluated, all ECMAScript code must be associated with a realm. Conceptually, a realm consists of a set of intrinsic objects, an ECMAScript global environment, all of the ECMAScript code that is loaded within the scope of that… §9.3 Realms
Realm Record Realm Records
A realm is represented in this specification as a Realm Record with the fields specified in Table 27: §9.3 Realms
Record Records
The Record type is used to describe data aggregations within the algorithms of this specification. A Record type value consists of one or more named fields. The value of each field is an ECMAScript language value or specification value. Fi… §6.2.1 The List and Record Specification Types
%ReferenceError%
The ReferenceError constructor is %ReferenceError%. §20.5.5.3 ReferenceError
Reference Record Reference Records
The Reference Record type is used to explain the behaviour of such operators as delete, typeof, the assignment operators, the super keyword and other language features. For example, the left-hand operand of an assignment is expected to pro… §6.2.4 The Reference Record Specification Type
%Reflect%
is %Reflect%. §28.1 The Reflect Object
%RegExp%
is %RegExp%. §22.2.3 The RegExp Constructor
%RegExp.prototype%
is %RegExp.prototype%. §22.2.5 Properties of the RegExp Prototype Object
RegExp prototype object
The RegExp prototype object: §22.2.5 Properties of the RegExp Prototype Object
%RegExpStringIteratorPrototype%
The %RegExpStringIteratorPrototype% object: §22.2.7.2 The %RegExpStringIteratorPrototype% Object
Relation
The Relation type is used to explain constraints on Sets. Values of the Relation type are Sets of ordered pairs of values from its value domain. For example, a Relation on events is a set of ordered pairs of events. For a Relation R and tw… §6.2.2 The Set and Relation Specification Types
@@replace
@@replace "Symbol.replace" A regular expression method that replaces matched substrings of a string. Called by the String.prototype.replace method. @@search "Symbol.search" A regular expression method that returns the index within a string… §6.1.5.1 Well-Known Symbols
reserved word reserved words
A reserved word is an IdentifierName that cannot be used as an identifier. Many keywords are reserved words, but some are not, and some are reserved only in certain contexts. if and while are reserved words. await is reserved only inside a… §12.6.2 Keywords and Reserved Words
ResolvedBinding Record ResolvedBinding Records
Bindings are represented by a ResolvedBinding Record, of the form { [[Module]]: Module Record, [[BindingName]]: String | namespace }. If the export is a Module Namespace Object without a direct binding in any module, [[BindingName]] will b… §16.2.1.4 Abstract Module Records
return completion return completions
return completion refers to any Completion Record with a [[Type]] value of return. §6.2.3 The Completion Record Specification Type
running execution context running execution contexts
This is known as the agent's running execution context. All references to the running execution context in this specification denote the running execution context of the surrounding agent. §9.4 Execution Contexts
runtime semantics
Algorithms which specify semantics that must be called at runtime are called runtime semantics. Runtime semantics are defined by abstract operations or syntax-directed operations. §5.2.3 Runtime Semantics

S

Script Record Script Records
A Script Record encapsulates information about a script being evaluated. Each script record contains the fields listed in Table 43. §16.1.4 Script Records
@@search
@@search "Symbol.search" A regular expression method that returns the index within a string that matches the regular expression. Called by the String.prototype.search method. @@species "Symbol.species" A function valued property that is th… §6.1.5.1 Well-Known Symbols
%Set%
is %Set%. §24.2.1 The Set Constructor
%SetIteratorPrototype%
The %SetIteratorPrototype% object: §24.2.5.2 The %SetIteratorPrototype% Object
%Set.prototype%
is %Set.prototype%. §24.2.3 Properties of the Set Prototype Object
Set prototype object
The Set prototype object: §24.2.3 Properties of the Set Prototype Object
%SharedArrayBuffer%
is %SharedArrayBuffer%. §25.2.2 The SharedArrayBuffer Constructor
%SharedArrayBuffer.prototype%
is %SharedArrayBuffer.prototype%. §25.2.4 Properties of the SharedArrayBuffer Prototype Object
SharedArrayBuffer prototype object
The SharedArrayBuffer prototype object: §25.2.4 Properties of the SharedArrayBuffer Prototype Object
Shared Data Block Shared Data Blocks
A data block that resides in memory that can be referenced from multiple agents concurrently is designated a Shared Data Block. A Shared Data Block has an identity (for the purposes of equality testing Shared Data Block values) that is add… §6.2.8 Data Blocks
Shared Data Block event Shared Data Block events
A Shared Data Block event is either a ReadSharedMemory, WriteSharedMemory, or ReadModifyWriteSharedMemory Record. §29.1 Memory Model Fundamentals
sort order
The sort order is the ordering of items after completion of step 5 of the algorithm above. The sort order is implementation-defined if SortCompare is not a consistent comparator for the elements of items. When SortIndexedProperties is invo… §23.1.3.28.1 SortIndexedProperties ( obj, len, SortCompare )
source text matched by
The source text matched by a grammar production or Parse Node derived from it is the portion of the source text that starts at the beginning of the first terminal that participated in the match and ends at the end of the last terminal that… §5.2.2 Syntax-Directed Operations
Source Text Module Record Source Text Module Records
A Source Text Module Record is used to represent information about a module that was defined from ECMAScript source text (11) that was parsed using the goal symbol Module. Its fields contain digested information about the names that are im… §16.2.1.6 Source Text Module Records
@@species
@@species "Symbol.species" A function valued property that is the constructor function that is used to create derived objects. @@split "Symbol.split" A regular expression method that splits a string at the indices that match the regular ex… §6.1.5.1 Well-Known Symbols
@@split
@@split "Symbol.split" A regular expression method that splits a string at the indices that match the regular expression. Called by the String.prototype.split method. @@toPrimitive "Symbol.toPrimitive" A method that converts an object to a… §6.1.5.1 Well-Known Symbols
static semantics
Such rules are always associated with a production of a grammar and are called the static semantics of the production. §5.2.4 Static Semantics
strict function strict functions
An ECMAScript function object whose code is strict mode code is called a strict function. One whose code is not strict mode code is called a non-strict function. §10.2 ECMAScript Function Objects
strict mode code
Code is interpreted as strict mode code in the following situations: §11.2.2 Strict Mode Code
strict partial order strict partial orders
A strict partial order is a Relation value R that satisfies the following. §6.2.2 The Set and Relation Specification Types
strict total order strict total orders
A strict total order is a Relation value R that satisfies the following. §6.2.2 The Set and Relation Specification Types
%String%
is %String%. §22.1.1 The String Constructor
string-concatenation
In this specification, the phrase "the string-concatenation of A, B, ..." (where each argument is a String value, a code unit, or a sequence of code units) denotes the String value whose sequence of code units is the concatenation of the c… §6.1.4 The String Type
String exotic object String exotic objects
An object is a String exotic object (or simply, a String object) if its [[GetOwnProperty]], [[DefineOwnProperty]], and [[OwnPropertyKeys]] internal methods use the following implementations, and its other essential internal methods use the… §10.4.3 String Exotic Objects
%StringIteratorPrototype%
The %StringIteratorPrototype% object: §22.1.5.1 The %StringIteratorPrototype% Object
%String.prototype%
is %String.prototype%. §22.1.3 Properties of the String Prototype Object
String prototype object
The String prototype object: §22.1.3 Properties of the String Prototype Object
substring
The phrase "the substring of S from inclusiveStart to exclusiveEnd" (where S is a String value or a sequence of code units and inclusiveStart and exclusiveEnd are integers) denotes the String value consisting of the consecutive code units … §6.1.4 The String Type
Super Reference Record Super Reference Records
[[ThisValue]] an ECMAScript language value or empty If not empty, the Reference Record represents a property binding that was expressed using the super keyword; it is called a Super Reference Record and its [[Base]] value will never be an … §6.2.4 The Reference Record Specification Type
surrogate pair surrogate pairs
A sequence of two code units, where the first code unit c1 is a leading surrogate and the second code unit c2 a trailing surrogate, is a surrogate pair and is interpreted as a code point with the value (c1 - 0xD800) × 0x400 + (c2 - 0xDC00)… §6.1.4 The String Type
surrounding agent surrounding agents
While an agent's executing thread executes jobs, the agent is the surrounding agent for the code in those jobs. The code uses the surrounding agent to access the specification-level execution objects held within the agent: the running exec… §9.7 Agents
%Symbol%
is %Symbol%. §20.4.1 The Symbol Constructor
%Symbol.prototype%
is %Symbol.prototype%. §20.4.3 Properties of the Symbol Prototype Object
Symbol prototype object
The Symbol prototype object: §20.4.3 Properties of the Symbol Prototype Object
Synchronize
Some operations may also introduce Synchronize events. A Synchronize event has no fields, and exists purely to directly constrain the permitted orderings of other events. §29.1 Memory Model Fundamentals
Synchronize event Synchronize events
Some operations may also introduce Synchronize events. A Synchronize event has no fields, and exists purely to directly constrain the permitted orderings of other events. §29.1 Memory Model Fundamentals
syntax-directed operation syntax-directed operations
A syntax-directed operation is a named operation whose definition consists of algorithms, each of which is associated with one or more productions from one of the ECMAScript grammars. A production that has multiple alternative definitions … §5.2.2 Syntax-Directed Operations
%SyntaxError%
The SyntaxError constructor is %SyntaxError%. §20.5.5.4 SyntaxError

T

the current Realm Record
The value of the Realm component of the running execution context is also called the current Realm Record. The value of the Function component of the running execution context is also called the active function object. §9.4 Execution Contexts
the same Parse Node
Parse Nodes are considered the same Parse Node if and only if they represent the same span of source text, are instances of the same grammar symbol, and resulted from the same parser invocation. §5.1.4 The Syntactic Grammar
thisBigIntValue
The abstract operation thisBigIntValue takes argument value. It performs the following steps when called: §21.2.3 Properties of the BigInt Prototype Object
thisBooleanValue
The abstract operation thisBooleanValue takes argument value. It performs the following steps when called: §20.3.3 Properties of the Boolean Prototype Object
this Date object
In following descriptions of functions that are properties of the Date prototype object, the phrase “this Date object” refers to the object that is the this value for the invocation of the function. If the Type of the this value is not Obj… §21.4.4 Properties of the Date Prototype Object
thisNumberValue
The abstract operation thisNumberValue takes argument value. It performs the following steps when called: §21.1.3 Properties of the Number Prototype Object
thisStringValue
The abstract operation thisStringValue takes argument value. It performs the following steps when called: §22.1.3 Properties of the String Prototype Object
thisSymbolValue
The abstract operation thisSymbolValue takes argument value. It performs the following steps when called: §20.4.3 Properties of the Symbol Prototype Object
this time value
The phrase “this time value” within the specification of a method refers to the result returned by calling the abstract operation thisTimeValue with the this value of the method invocation passed as the argument. §21.4.4 Properties of the Date Prototype Object
thisTimeValue
The abstract operation thisTimeValue takes argument value. It performs the following steps when called: §21.4.4 Properties of the Date Prototype Object
throw completion throw completions
throw completion refers to any Completion Record with a [[Type]] value of throw. §6.2.3 The Completion Record Specification Type
%ThrowTypeError%
The %ThrowTypeError% intrinsic is an anonymous built-in function object that is defined once for each realm. When %ThrowTypeError% is called it performs the following steps: §10.2.4.1 %ThrowTypeError% ( )
time value time values
An ECMAScript time value is a Number, either a finite integral Number representing an instant in time to millisecond precision or NaN representing no specific instant. A time value that is a multiple of 24 × 60 × 60 × 1000 = 86,400,000 (i.… §21.4.1.1 Time Values and Time Range
@@toPrimitive
@@toPrimitive "Symbol.toPrimitive" A method that converts an object to a corresponding primitive value. Called by the ToPrimitive abstract operation. @@toStringTag "Symbol.toStringTag" A String valued property that is used in the creation … §6.1.5.1 Well-Known Symbols
@@toStringTag
@@toStringTag "Symbol.toStringTag" A String valued property that is used in the creation of the default string description of an object. Accessed by the built-in method Object.prototype.toString. @@unscopables "Symbol.unscopables" An objec… §6.1.5.1 Well-Known Symbols
trailing surrogate trailing surrogates
Such operations apply special treatment to every code unit with a numeric value in the inclusive range 0xD800 to 0xDBFF (defined by the Unicode Standard as a leading surrogate, or more formally as a high-surrogate code unit) and every code… §6.1.4 The String Type
%TypedArray%
The %TypedArray% intrinsic object: §23.2.1 The %TypedArray% Intrinsic Object
TypedArray element type TypedArray element types
A TypedArray element type is the underlying binary scalar data type that all elements of a TypedArray instance have. There is a distinct TypedArray constructor, listed in Table 71, for each of the supported element types. Each constructor … §23.2 TypedArray Objects
%TypedArray.prototype%
is %TypedArray.prototype%. §23.2.3 Properties of the %TypedArray% Prototype Object
%TypedArray% prototype object
The %TypedArray% prototype object: §23.2.3 Properties of the %TypedArray% Prototype Object
%TypeError%
The TypeError constructor is %TypeError%. §20.5.5.5 TypeError

U

%Uint16Array%
Constructor Name and Intrinsic Element Type Element Size Conversion Operation Description Int8Array %Int8Array% Int8 1 ToInt8 8-bit two's complement signed integer Uint8Array %Uint8Array% Uint8 1 ToUint8 8-bit unsigned integer Uint8Clamped… §23.2 TypedArray Objects
%Uint32Array%
Constructor Name and Intrinsic Element Type Element Size Conversion Operation Description Int8Array %Int8Array% Int8 1 ToInt8 8-bit two's complement signed integer Uint8Array %Uint8Array% Uint8 1 ToUint8 8-bit unsigned integer Uint8Clamped… §23.2 TypedArray Objects
%Uint8Array%
Constructor Name and Intrinsic Element Type Element Size Conversion Operation Description Int8Array %Int8Array% Int8 1 ToInt8 8-bit two's complement signed integer Uint8Array %Uint8Array% Uint8 1 ToUint8 8-bit unsigned integer Uint8Clamped… §23.2 TypedArray Objects
%Uint8ClampedArray%
Constructor Name and Intrinsic Element Type Element Size Conversion Operation Description Int8Array %Int8Array% Int8 1 ToInt8 8-bit two's complement signed integer Uint8Array %Uint8Array% Uint8 1 ToUint8 8-bit unsigned integer Uint8Clamped… §23.2 TypedArray Objects
%unescape%
The unescape function is the %unescape% intrinsic object. When the unescape function is called with one argument string, the following steps are taken: §B.2.1.2 unescape ( string )
@@unscopables
@@unscopables "Symbol.unscopables" An object valued property whose own and inherited property names are property names that are excluded from the with environment bindings of the associated object. 6.1.6 Numeric TypesECMAScript has two bui… §6.1.5.1 Well-Known Symbols
%URIError%
The URIError constructor is %URIError%. §20.5.5.6 URIError
Use Strict Directive Use Strict Directives
A Use Strict Directive is an ExpressionStatement in a Directive Prologue whose StringLiteral is either of the exact code point sequences "use strict" or 'use strict'. A Use Strict Directive may not contain an EscapeSequence or LineContinua… §11.2.1 Directive Prologues and the Use Strict Directive

W

WaiterList WaiterLists
A WaiterList is a semantic object that contains an ordered list of agent signifiers for those agents that are waiting on a location (block, i) in shared memory; block is a Shared Data Block and i a byte offset into the memory of block. A W… §25.4.1 WaiterList Objects
%WeakMap%
is %WeakMap%. §24.3.1 The WeakMap Constructor
%WeakMap.prototype%
is %WeakMap.prototype%. §24.3.3 Properties of the WeakMap Prototype Object
WeakMap prototype object
The WeakMap prototype object: §24.3.3 Properties of the WeakMap Prototype Object
%WeakRef%
is %WeakRef%. §26.1.1 The WeakRef Constructor
WeakRef WeakRefs
The WeakRef constructor: §26.1.1 The WeakRef Constructor
%WeakRef.prototype%
is %WeakRef.prototype%. §26.1.3 Properties of the WeakRef Prototype Object
WeakRef prototype
The WeakRef prototype object: §26.1.3 Properties of the WeakRef Prototype Object
%WeakSet%
is %WeakSet%. §24.4.1 The WeakSet Constructor
%WeakSet.prototype%
is %WeakSet.prototype%. §24.4.3 Properties of the WeakSet Prototype Object
WeakSet prototype object
The WeakSet prototype object: §24.4.3 Properties of the WeakSet Prototype Object
WriteSharedMemory
A Shared Data Block event is either a ReadSharedMemory, WriteSharedMemory, or ReadModifyWriteSharedMemory Record. §29.1 Memory Model Fundamentals