mirror of
https://github.com/bendtherules/ask262.git
synced 2026-08-18 21:31:46 +00:00
4665 lines
917 KiB
HTML
4665 lines
917 KiB
HTML
<!doctype html><html lang="en-GB-oxendict">
|
|
<head><meta name="viewport" content="width=device-width, initial-scale=1"><meta charset="utf-8"><meta property="og:image" content="https://tc39.es/ecmarkup/ecma-logo.png"><meta property="og:title" content="ECMAScript® 2026 Language Specification"><meta property="og:description" content="Introduction
|
|
This Ecma Standard defines the ECMAScript 2026 Language. It is the seventeenth edition of the ECMAScript Language Specification. ECMAScript is based on several originating technologies, the most well-known being JavaScript (Netscape) and JScript (Microsoft). The language was invent">
|
|
<link rel="icon" href="../img/favicon.ico">
|
|
<link rel="stylesheet" href="../assets/css/ecmarkup.css"><link rel="stylesheet" href="../assets/css/print.css" media="print"><style>
|
|
.unicode-property-table {
|
|
table-layout: fixed;
|
|
width: 100%;
|
|
font-size: 80%;
|
|
}
|
|
|
|
#metadata-block {
|
|
margin: 4em 0;
|
|
padding: 10px;
|
|
border: 1px solid #ee8421;
|
|
}
|
|
#metadata-block h1 {
|
|
font-size: 1.5em;
|
|
margin-top: 0;
|
|
}
|
|
#metadata-block > ul {
|
|
list-style-type: none;
|
|
margin: 0; padding: 0;
|
|
}
|
|
|
|
#ecma-logo {
|
|
width: 500px;
|
|
}
|
|
|
|
.corner-cell {
|
|
position: relative;
|
|
height: 2lh;
|
|
}
|
|
.corner-cell .slash {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
background: linear-gradient(to bottom left, transparent calc(50% - 1px), gray, transparent calc(50% + 1px));
|
|
}
|
|
.corner-cell > .column {
|
|
position: absolute;
|
|
bottom: 0.4em;
|
|
left: 1em;
|
|
}
|
|
.corner-cell > .row {
|
|
position: absolute;
|
|
top: 0.4em;
|
|
right: 1em;
|
|
}
|
|
</style>
|
|
<style media="print">
|
|
/**
|
|
* ECMA-262-specific hacks. Shouldn't require a ton of maintenance; audit if
|
|
* visual inspection results in unexpected page breaks.
|
|
*
|
|
* For print version, the table captioned "Module fields after the initial Evaluate() call" _may_ need to set the row
|
|
* EVALUATING-ASYNC to one cell with a colspan of 5. It typically does not fit on the page, but the cell merging is
|
|
* not a perfectly accurate solution and will not be merged back in to the specification.
|
|
* See https://github.com/tc39/ecma262/pull/3623#issuecomment-3029366960
|
|
*/
|
|
|
|
/* Make sure tables are wide enough for their captions */
|
|
table {
|
|
min-width: 135mm;
|
|
}
|
|
|
|
/* 2.2 Examples of legacy/normative-optional are small enough to be aggressive against breaks */
|
|
#sec-conformance [example],
|
|
/* 16.2.1.xxx many tables */
|
|
#sec-example-cyclic-module-record-graphs table {
|
|
break-inside: avoid-page;
|
|
}
|
|
|
|
/* 12.10.1 long note can break wherever it wants */
|
|
#sec-rules-of-automatic-semicolon-insertion > emu-note {
|
|
break-before: initial;
|
|
break-inside: initial;
|
|
}
|
|
|
|
/* 12.10.X Sections start with an <em> not inside a <p> */
|
|
#sec-examples-of-automatic-semicolon-insertion > em,
|
|
#sec-interesting-cases-of-automatic-semicolon-insertion > em,
|
|
#sec-asi-cases-with-no-lineterminator-here > em {
|
|
display: block;
|
|
margin-top: 1.25ex;
|
|
}
|
|
|
|
/* 15.1.X missing spacing between intro and first emu-grammar */
|
|
#sec-static-semantics-containsexpression > emu-grammar:first-of-type {
|
|
margin-top: 2ex;
|
|
}
|
|
|
|
/* 15.3 A very long term combined with inline-block, nowrap, and justified text resulting in weird punctuation */
|
|
#sec-arrow-function-definitions > p > emu-grammar {
|
|
text-align: left;
|
|
}
|
|
|
|
/* 20.X legacy title */
|
|
#sec-object\.prototype\.__proto__ > .attributes-tag {
|
|
break-before: avoid-page;
|
|
break-after: avoid-page;
|
|
}
|
|
|
|
/* 21.X table middle column is too narrow */
|
|
#table-time-zone-identifier-record-fields > figure > table th:nth-of-type(2) {
|
|
min-width: 19mm;
|
|
}
|
|
|
|
/* 29.X extremely long note */
|
|
#sec-shared-memory-guidelines > emu-note {
|
|
break-inside: auto;
|
|
}
|
|
|
|
.unicode-property-table {
|
|
table-layout: initial;
|
|
width: auto;
|
|
font-size: 90%;
|
|
}
|
|
|
|
.unicode-property-table th:first-of-type {
|
|
width: 33%;
|
|
}
|
|
|
|
.corner-cell {
|
|
background-image: url(data:image/svg+xml;base64,PHN2ZyBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGZpbGwtcnVsZT0iZXZlbm9kZCIgaGVpZ2h0PSI0NiIgc3Ryb2tlLWxpbmVjYXA9InNxdWFyZSIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIgc3Ryb2tlLW1pdGVybGltaXQ9IjEuNSIgd2lkdGg9IjI0MiIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMzE1LjI2NiAzOTYuMzQzIDI0MS4zOTQgNDUuMTU1IiBmaWxsPSJub25lIiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMS4wNCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTMxNC45MyAtMzk1LjkzNSkiLz48L3N2Zz4=);
|
|
background-repeat: no-repeat;
|
|
background-size: 100% 3em;
|
|
height: 3em;
|
|
padding: 0;
|
|
vertical-align: inherit;
|
|
position: static;
|
|
}
|
|
|
|
.corner-cell .slash {
|
|
display: none;
|
|
}
|
|
|
|
.corner-cell > .column, .corner-cell > .row {
|
|
display: block;
|
|
position: relative;
|
|
}
|
|
|
|
.corner-cell > .row {
|
|
text-align: right;
|
|
top: -0.75em
|
|
}
|
|
|
|
.corner-cell > .column {
|
|
text-align: left;
|
|
bottom: -1.25em;
|
|
}
|
|
</style>
|
|
<title>ECMAScript® 2026 Language Specification</title><script src="../assets/js/multipage.js?cache=Wu2V1pj2" defer=""></script><script src="../assets/js/ecmarkup.js?cache=BPFBckdu" defer=""></script><style>
|
|
@media print {
|
|
@page :left {
|
|
@bottom-right {
|
|
content: '© Ecma International 2026';
|
|
}
|
|
}
|
|
@page :right {
|
|
@bottom-left {
|
|
content: '© Ecma International 2026';
|
|
}
|
|
}
|
|
@page :first {
|
|
@bottom-left {
|
|
content: '';
|
|
}
|
|
@bottom-right {
|
|
content: '';
|
|
}
|
|
}
|
|
@page :blank {
|
|
@bottom-left {
|
|
content: '';
|
|
}
|
|
@bottom-right {
|
|
content: '';
|
|
}
|
|
}
|
|
}
|
|
</style><style>
|
|
@import url("https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.0.1/styles/base16/solarized-light.min.css");
|
|
@import url("https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.0.1/styles/a11y-dark.min.css") (prefers-color-scheme: dark);
|
|
</style><link rel="canonical" href="../#sec-grammar-summary"></head>
|
|
<body><div id="menu"><div id="menu-search"><input type="text" id="menu-search-box" placeholder="Search..."><div id="menu-search-results" class="inactive"></div></div><div id="menu-pins"><div class="menu-pane-header">Pins<button class="unpin-all">clear</button></div><ul id="menu-pins-list"></ul></div><div class="menu-pane-header">Table of Contents</div><div id="menu-toc"><ol class="toc"><li><span class="item-toggle-none"></span><a href="./#sec-intro" title="Introduction">Introduction</a></li><li><span class="item-toggle-none"></span><a href="scope.html#sec-scope" title="Scope"><span class="secnum">1</span> Scope</a></li><li><span class="item-toggle">+</span><a href="conformance.html#sec-conformance" title="Conformance"><span class="secnum">2</span> Conformance</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="conformance.html#sec-conformance-normative-optional" title="Example Normative Optional Clause Heading"><span class="secnum">2.1</span> Example Normative Optional Clause Heading</a></li><li><span class="item-toggle-none"></span><a href="conformance.html#sec-conformance-legacy" title="Example Legacy Clause Heading"><span class="secnum">2.2</span> Example Legacy Clause Heading</a></li><li><span class="item-toggle-none"></span><a href="conformance.html#sec-conformance-legacy-normative-optional" title="Example Legacy Normative Optional Clause Heading"><span class="secnum">2.3</span> Example Legacy Normative Optional Clause Heading</a></li></ol></li><li><span class="item-toggle-none"></span><a href="normative-references.html#sec-normative-references" title="Normative References"><span class="secnum">3</span> Normative References</a></li><li><span class="item-toggle">+</span><a href="overview.html#sec-overview" title="Overview"><span class="secnum">4</span> Overview</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="overview.html#sec-web-scripting" title="Web Scripting"><span class="secnum">4.1</span> Web Scripting</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-hosts-and-implementations" title="Hosts and Implementations"><span class="secnum">4.2</span> Hosts and Implementations</a></li><li><span class="item-toggle">+</span><a href="overview.html#sec-ecmascript-overview" title="ECMAScript Overview"><span class="secnum">4.3</span> ECMAScript Overview</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="overview.html#sec-objects" title="Objects"><span class="secnum">4.3.1</span> Objects</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-strict-variant-of-ecmascript" title="The Strict Variant of ECMAScript"><span class="secnum">4.3.2</span> The Strict Variant of ECMAScript</a></li></ol></li><li><span class="item-toggle">+</span><a href="overview.html#sec-terms-and-definitions" title="Terms and Definitions"><span class="secnum">4.4</span> Terms and Definitions</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="overview.html#sec-terms-and-definitions-implementation-approximated" title="implementation-approximated"><span class="secnum">4.4.1</span> implementation-approximated</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-terms-and-definitions-implementation-defined" title="implementation-defined"><span class="secnum">4.4.2</span> implementation-defined</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-terms-and-definitions-host-defined" title="host-defined"><span class="secnum">4.4.3</span> host-defined</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-type" title="type"><span class="secnum">4.4.4</span> type</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-primitive-value" title="primitive value"><span class="secnum">4.4.5</span> primitive value</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-terms-and-definitions-object" title="object"><span class="secnum">4.4.6</span> object</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-constructor" title="constructor"><span class="secnum">4.4.7</span> constructor</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-terms-and-definitions-prototype" title="prototype"><span class="secnum">4.4.8</span> prototype</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-ordinary-object" title="ordinary object"><span class="secnum">4.4.9</span> ordinary object</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-exotic-object" title="exotic object"><span class="secnum">4.4.10</span> exotic object</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-standard-object" title="standard object"><span class="secnum">4.4.11</span> standard object</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-built-in-object" title="built-in object"><span class="secnum">4.4.12</span> built-in object</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-undefined-value" title="undefined value"><span class="secnum">4.4.13</span> undefined value</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-terms-and-definitions-undefined-type" title="Undefined type"><span class="secnum">4.4.14</span> Undefined type</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-null-value" title="null value"><span class="secnum">4.4.15</span> null value</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-terms-and-definitions-null-type" title="Null type"><span class="secnum">4.4.16</span> Null type</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-terms-and-definitions-boolean-value" title="Boolean value"><span class="secnum">4.4.17</span> Boolean value</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-terms-and-definitions-boolean-type" title="Boolean type"><span class="secnum">4.4.18</span> Boolean type</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-boolean-object" title="Boolean object"><span class="secnum">4.4.19</span> Boolean object</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-terms-and-definitions-string-value" title="String value"><span class="secnum">4.4.20</span> String value</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-terms-and-definitions-string-type" title="String type"><span class="secnum">4.4.21</span> String type</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-string-object" title="String object"><span class="secnum">4.4.22</span> String object</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-terms-and-definitions-number-value" title="Number value"><span class="secnum">4.4.23</span> Number value</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-terms-and-definitions-number-type" title="Number type"><span class="secnum">4.4.24</span> Number type</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-number-object" title="Number object"><span class="secnum">4.4.25</span> Number object</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-terms-and-definitions-infinity" title="Infinity"><span class="secnum">4.4.26</span> Infinity</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-terms-and-definitions-nan" title="NaN"><span class="secnum">4.4.27</span> NaN</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-terms-and-definitions-bigint-value" title="BigInt value"><span class="secnum">4.4.28</span> BigInt value</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-terms-and-definitions-bigint-type" title="BigInt type"><span class="secnum">4.4.29</span> BigInt type</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-bigint-object" title="BigInt object"><span class="secnum">4.4.30</span> BigInt object</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-symbol-value" title="Symbol value"><span class="secnum">4.4.31</span> Symbol value</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-terms-and-definitions-symbol-type" title="Symbol type"><span class="secnum">4.4.32</span> Symbol type</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-symbol-object" title="Symbol object"><span class="secnum">4.4.33</span> Symbol object</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-terms-and-definitions-function" title="function"><span class="secnum">4.4.34</span> function</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-built-in-function" title="built-in function"><span class="secnum">4.4.35</span> built-in function</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-built-in-constructor" title="built-in constructor"><span class="secnum">4.4.36</span> built-in constructor</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-property" title="property"><span class="secnum">4.4.37</span> property</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-method" title="method"><span class="secnum">4.4.38</span> method</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-built-in-method" title="built-in method"><span class="secnum">4.4.39</span> built-in method</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-attribute" title="attribute"><span class="secnum">4.4.40</span> attribute</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-own-property" title="own property"><span class="secnum">4.4.41</span> own property</a></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-inherited-property" title="inherited property"><span class="secnum">4.4.42</span> inherited property</a></li></ol></li><li><span class="item-toggle-none"></span><a href="overview.html#sec-organization-of-this-specification" title="Organization of This Specification"><span class="secnum">4.5</span> Organization of This Specification</a></li></ol></li><li><span class="item-toggle">+</span><a href="notational-conventions.html#sec-notational-conventions" title="Notational Conventions"><span class="secnum">5</span> Notational Conventions</a><ol class="toc"><li><span class="item-toggle">+</span><a href="notational-conventions.html#sec-syntactic-and-lexical-grammars" title="Syntactic and Lexical Grammars"><span class="secnum">5.1</span> Syntactic and Lexical Grammars</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-context-free-grammars" title="Context-Free Grammars"><span class="secnum">5.1.1</span> Context-Free Grammars</a></li><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-lexical-and-regexp-grammars" title="The Lexical and RegExp Grammars"><span class="secnum">5.1.2</span> The Lexical and RegExp Grammars</a></li><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-numeric-string-grammar" title="The Numeric String Grammar"><span class="secnum">5.1.3</span> The Numeric String Grammar</a></li><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-syntactic-grammar" title="The Syntactic Grammar"><span class="secnum">5.1.4</span> The Syntactic Grammar</a></li><li><span class="item-toggle">+</span><a href="notational-conventions.html#sec-grammar-notation" title="Grammar Notation"><span class="secnum">5.1.5</span> Grammar Notation</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-terminal-symbols" title="Terminal Symbols"><span class="secnum">5.1.5.1</span> Terminal Symbols</a></li><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-nonterminal-symbols-and-productions" title="Nonterminal Symbols and Productions"><span class="secnum">5.1.5.2</span> Nonterminal Symbols and Productions</a></li><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-optional-symbols" title="Optional Symbols"><span class="secnum">5.1.5.3</span> Optional Symbols</a></li><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-grammatical-parameters" title="Grammatical Parameters"><span class="secnum">5.1.5.4</span> Grammatical Parameters</a></li><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-one-of" title="one of"><span class="secnum">5.1.5.5</span> one of</a></li><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-empty" title="[empty]"><span class="secnum">5.1.5.6</span> [empty]</a></li><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-lookahead-restrictions" title="Lookahead Restrictions"><span class="secnum">5.1.5.7</span> Lookahead Restrictions</a></li><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-no-lineterminator-here" title="[no LineTerminator here]"><span class="secnum">5.1.5.8</span> [no <emu-nt>LineTerminator</emu-nt> here]</a></li><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-but-not" title="but not"><span class="secnum">5.1.5.9</span> but not</a></li><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-descriptive-phrases" title="Descriptive Phrases"><span class="secnum">5.1.5.10</span> Descriptive Phrases</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="notational-conventions.html#sec-algorithm-conventions" title="Algorithm Conventions"><span class="secnum">5.2</span> Algorithm Conventions</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-evaluation-order" title="Evaluation Order"><span class="secnum">5.2.1</span> Evaluation Order</a></li><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-algorithm-conventions-abstract-operations" title="Abstract Operations"><span class="secnum">5.2.2</span> Abstract Operations</a></li><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-algorithm-conventions-syntax-directed-operations" title="Syntax-Directed Operations"><span class="secnum">5.2.3</span> Syntax-Directed Operations</a></li><li><span class="item-toggle">+</span><a href="notational-conventions.html#sec-runtime-semantics" title="Runtime Semantics"><span class="secnum">5.2.4</span> Runtime Semantics</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-completion-ao" title="Completion ( completionRecord )"><span class="secnum">5.2.4.1</span> Completion ( <var>completionRecord</var> )</a></li><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-throw-an-exception" title="Throw an Exception"><span class="secnum">5.2.4.2</span> Throw an Exception</a></li><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-shorthands-for-unwrapping-completion-records" title="Shorthands for Unwrapping Completion Records"><span class="secnum">5.2.4.3</span> Shorthands for Unwrapping Completion Records</a></li><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-implicit-normal-completion" title="Implicit Normal Completion"><span class="secnum">5.2.4.4</span> Implicit Normal Completion</a></li></ol></li><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-static-semantic-rules" title="Static Semantics"><span class="secnum">5.2.5</span> Static Semantics</a></li><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-mathematical-operations" title="Mathematical Operations"><span class="secnum">5.2.6</span> Mathematical Operations</a></li><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-value-notation" title="Value Notation"><span class="secnum">5.2.7</span> Value Notation</a></li><li><span class="item-toggle-none"></span><a href="notational-conventions.html#sec-identity" title="Identity"><span class="secnum">5.2.8</span> Identity</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-data-types-and-values.html#sec-ecmascript-data-types-and-values" title="ECMAScript Data Types and Values"><span class="secnum">6</span> ECMAScript Data Types and Values</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ecmascript-data-types-and-values.html#sec-ecmascript-language-types" title="ECMAScript Language Types"><span class="secnum">6.1</span> ECMAScript Language Types</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-ecmascript-language-types-undefined-type" title="The Undefined Type"><span class="secnum">6.1.1</span> The Undefined Type</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-ecmascript-language-types-null-type" title="The Null Type"><span class="secnum">6.1.2</span> The Null Type</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-ecmascript-language-types-boolean-type" title="The Boolean Type"><span class="secnum">6.1.3</span> The Boolean Type</a></li><li><span class="item-toggle">+</span><a href="ecmascript-data-types-and-values.html#sec-ecmascript-language-types-string-type" title="The String Type"><span class="secnum">6.1.4</span> The String Type</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-stringindexof" title="StringIndexOf ( string, searchValue, fromIndex )"><span class="secnum">6.1.4.1</span> StringIndexOf ( <var>string</var>, <var>searchValue</var>, <var>fromIndex</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-stringlastindexof" title="StringLastIndexOf ( string, searchValue, fromIndex )"><span class="secnum">6.1.4.2</span> StringLastIndexOf ( <var>string</var>, <var>searchValue</var>, <var>fromIndex</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-data-types-and-values.html#sec-ecmascript-language-types-symbol-type" title="The Symbol Type"><span class="secnum">6.1.5</span> The Symbol Type</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-well-known-symbols" title="Well-Known Symbols"><span class="secnum">6.1.5.1</span> Well-Known Symbols</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-data-types-and-values.html#sec-numeric-types" title="Numeric Types"><span class="secnum">6.1.6</span> Numeric Types</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ecmascript-data-types-and-values.html#sec-ecmascript-language-types-number-type" title="The Number Type"><span class="secnum">6.1.6.1</span> The Number Type</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-number-unaryMinus" title="Number::unaryMinus ( x )"><span class="secnum">6.1.6.1.1</span> Number::unaryMinus ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-number-bitwiseNOT" title="Number::bitwiseNOT ( x )"><span class="secnum">6.1.6.1.2</span> Number::bitwiseNOT ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-number-exponentiate" title="Number::exponentiate ( base, exponent )"><span class="secnum">6.1.6.1.3</span> Number::exponentiate ( <var>base</var>, <var>exponent</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-number-multiply" title="Number::multiply ( x, y )"><span class="secnum">6.1.6.1.4</span> Number::multiply ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-number-divide" title="Number::divide ( x, y )"><span class="secnum">6.1.6.1.5</span> Number::divide ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-number-remainder" title="Number::remainder ( n, d )"><span class="secnum">6.1.6.1.6</span> Number::remainder ( <var>n</var>, <var>d</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-number-add" title="Number::add ( x, y )"><span class="secnum">6.1.6.1.7</span> Number::add ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-number-subtract" title="Number::subtract ( x, y )"><span class="secnum">6.1.6.1.8</span> Number::subtract ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-number-leftShift" title="Number::leftShift ( x, y )"><span class="secnum">6.1.6.1.9</span> Number::leftShift ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-number-signedRightShift" title="Number::signedRightShift ( x, y )"><span class="secnum">6.1.6.1.10</span> Number::signedRightShift ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-number-unsignedRightShift" title="Number::unsignedRightShift ( x, y )"><span class="secnum">6.1.6.1.11</span> Number::unsignedRightShift ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-number-lessThan" title="Number::lessThan ( x, y )"><span class="secnum">6.1.6.1.12</span> Number::lessThan ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-number-equal" title="Number::equal ( x, y )"><span class="secnum">6.1.6.1.13</span> Number::equal ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-number-sameValue" title="Number::sameValue ( x, y )"><span class="secnum">6.1.6.1.14</span> Number::sameValue ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-number-sameValueZero" title="Number::sameValueZero ( x, y )"><span class="secnum">6.1.6.1.15</span> Number::sameValueZero ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numberbitwiseop" title="NumberBitwiseOp ( op, x, y )"><span class="secnum">6.1.6.1.16</span> NumberBitwiseOp ( <var>op</var>, <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-number-bitwiseAND" title="Number::bitwiseAND ( x, y )"><span class="secnum">6.1.6.1.17</span> Number::bitwiseAND ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-number-bitwiseXOR" title="Number::bitwiseXOR ( x, y )"><span class="secnum">6.1.6.1.18</span> Number::bitwiseXOR ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-number-bitwiseOR" title="Number::bitwiseOR ( x, y )"><span class="secnum">6.1.6.1.19</span> Number::bitwiseOR ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-number-tostring" title="Number::toString ( x, radix )"><span class="secnum">6.1.6.1.20</span> Number::toString ( <var>x</var>, <var>radix</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-data-types-and-values.html#sec-ecmascript-language-types-bigint-type" title="The BigInt Type"><span class="secnum">6.1.6.2</span> The BigInt Type</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-bigint-unaryMinus" title="BigInt::unaryMinus ( x )"><span class="secnum">6.1.6.2.1</span> BigInt::unaryMinus ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-bigint-bitwiseNOT" title="BigInt::bitwiseNOT ( x )"><span class="secnum">6.1.6.2.2</span> BigInt::bitwiseNOT ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-bigint-exponentiate" title="BigInt::exponentiate ( base, exponent )"><span class="secnum">6.1.6.2.3</span> BigInt::exponentiate ( <var>base</var>, <var>exponent</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-bigint-multiply" title="BigInt::multiply ( x, y )"><span class="secnum">6.1.6.2.4</span> BigInt::multiply ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-bigint-divide" title="BigInt::divide ( x, y )"><span class="secnum">6.1.6.2.5</span> BigInt::divide ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-bigint-remainder" title="BigInt::remainder ( n, d )"><span class="secnum">6.1.6.2.6</span> BigInt::remainder ( <var>n</var>, <var>d</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-bigint-add" title="BigInt::add ( x, y )"><span class="secnum">6.1.6.2.7</span> BigInt::add ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-bigint-subtract" title="BigInt::subtract ( x, y )"><span class="secnum">6.1.6.2.8</span> BigInt::subtract ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-bigint-leftShift" title="BigInt::leftShift ( x, y )"><span class="secnum">6.1.6.2.9</span> BigInt::leftShift ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-bigint-signedRightShift" title="BigInt::signedRightShift ( x, y )"><span class="secnum">6.1.6.2.10</span> BigInt::signedRightShift ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-bigint-unsignedRightShift" title="BigInt::unsignedRightShift ( x, y )"><span class="secnum">6.1.6.2.11</span> BigInt::unsignedRightShift ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-bigint-lessThan" title="BigInt::lessThan ( x, y )"><span class="secnum">6.1.6.2.12</span> BigInt::lessThan ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-bigint-equal" title="BigInt::equal ( x, y )"><span class="secnum">6.1.6.2.13</span> BigInt::equal ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-binaryand" title="BinaryAnd ( x, y )"><span class="secnum">6.1.6.2.14</span> BinaryAnd ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-binaryor" title="BinaryOr ( x, y )"><span class="secnum">6.1.6.2.15</span> BinaryOr ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-binaryxor" title="BinaryXor ( x, y )"><span class="secnum">6.1.6.2.16</span> BinaryXor ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-bigintbitwiseop" title="BigIntBitwiseOp ( op, x, y )"><span class="secnum">6.1.6.2.17</span> BigIntBitwiseOp ( <var>op</var>, <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-bigint-bitwiseAND" title="BigInt::bitwiseAND ( x, y )"><span class="secnum">6.1.6.2.18</span> BigInt::bitwiseAND ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-bigint-bitwiseXOR" title="BigInt::bitwiseXOR ( x, y )"><span class="secnum">6.1.6.2.19</span> BigInt::bitwiseXOR ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-bigint-bitwiseOR" title="BigInt::bitwiseOR ( x, y )"><span class="secnum">6.1.6.2.20</span> BigInt::bitwiseOR ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-numeric-types-bigint-tostring" title="BigInt::toString ( x, radix )"><span class="secnum">6.1.6.2.21</span> BigInt::toString ( <var>x</var>, <var>radix</var> )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-data-types-and-values.html#sec-object-type" title="The Object Type"><span class="secnum">6.1.7</span> The Object Type</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-property-attributes" title="Property Attributes"><span class="secnum">6.1.7.1</span> Property Attributes</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-object-internal-methods-and-internal-slots" title="Object Internal Methods and Internal Slots"><span class="secnum">6.1.7.2</span> Object Internal Methods and Internal Slots</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-invariants-of-the-essential-internal-methods" title="Invariants of the Essential Internal Methods"><span class="secnum">6.1.7.3</span> Invariants of the Essential Internal Methods</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-well-known-intrinsic-objects" title="Well-Known Intrinsic Objects"><span class="secnum">6.1.7.4</span> Well-Known Intrinsic Objects</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-data-types-and-values.html#sec-ecmascript-specification-types" title="ECMAScript Specification Types"><span class="secnum">6.2</span> ECMAScript Specification Types</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-enum-specification-type" title="The Enum Specification Type"><span class="secnum">6.2.1</span> The Enum Specification Type</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-list-and-record-specification-type" title="The List and Record Specification Types"><span class="secnum">6.2.2</span> The List and Record Specification Types</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-set-and-relation-specification-type" title="The Set and Relation Specification Types"><span class="secnum">6.2.3</span> The Set and Relation Specification Types</a></li><li><span class="item-toggle">+</span><a href="ecmascript-data-types-and-values.html#sec-completion-record-specification-type" title="The Completion Record Specification Type"><span class="secnum">6.2.4</span> The Completion Record Specification Type</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-normalcompletion" title="NormalCompletion ( value )"><span class="secnum">6.2.4.1</span> NormalCompletion ( <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-throwcompletion" title="ThrowCompletion ( value )"><span class="secnum">6.2.4.2</span> ThrowCompletion ( <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-returncompletion" title="ReturnCompletion ( value )"><span class="secnum">6.2.4.3</span> ReturnCompletion ( <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-updateempty" title="UpdateEmpty ( completionRecord, value )"><span class="secnum">6.2.4.4</span> UpdateEmpty ( <var>completionRecord</var>, <var>value</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-data-types-and-values.html#sec-reference-record-specification-type" title="The Reference Record Specification Type"><span class="secnum">6.2.5</span> The Reference Record Specification Type</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-ispropertyreference" title="IsPropertyReference ( V )"><span class="secnum">6.2.5.1</span> IsPropertyReference ( <var>V</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-isunresolvablereference" title="IsUnresolvableReference ( V )"><span class="secnum">6.2.5.2</span> IsUnresolvableReference ( <var>V</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-issuperreference" title="IsSuperReference ( V )"><span class="secnum">6.2.5.3</span> IsSuperReference ( <var>V</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-isprivatereference" title="IsPrivateReference ( V )"><span class="secnum">6.2.5.4</span> IsPrivateReference ( <var>V</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-getvalue" title="GetValue ( V )"><span class="secnum">6.2.5.5</span> GetValue ( <var>V</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-putvalue" title="PutValue ( V, W )"><span class="secnum">6.2.5.6</span> PutValue ( <var>V</var>, <var>W</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-getthisvalue" title="GetThisValue ( V )"><span class="secnum">6.2.5.7</span> GetThisValue ( <var>V</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-initializereferencedbinding" title="InitializeReferencedBinding ( V, W )"><span class="secnum">6.2.5.8</span> InitializeReferencedBinding ( <var>V</var>, <var>W</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-makeprivatereference" title="MakePrivateReference ( baseValue, privateIdentifier )"><span class="secnum">6.2.5.9</span> MakePrivateReference ( <var>baseValue</var>, <var>privateIdentifier</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-data-types-and-values.html#sec-property-descriptor-specification-type" title="The Property Descriptor Specification Type"><span class="secnum">6.2.6</span> The Property Descriptor Specification Type</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-isaccessordescriptor" title="IsAccessorDescriptor ( Desc )"><span class="secnum">6.2.6.1</span> IsAccessorDescriptor ( <var>Desc</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-isdatadescriptor" title="IsDataDescriptor ( Desc )"><span class="secnum">6.2.6.2</span> IsDataDescriptor ( <var>Desc</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-isgenericdescriptor" title="IsGenericDescriptor ( Desc )"><span class="secnum">6.2.6.3</span> IsGenericDescriptor ( <var>Desc</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-frompropertydescriptor" title="FromPropertyDescriptor ( Desc )"><span class="secnum">6.2.6.4</span> FromPropertyDescriptor ( <var>Desc</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-topropertydescriptor" title="ToPropertyDescriptor ( Obj )"><span class="secnum">6.2.6.5</span> ToPropertyDescriptor ( <var>Obj</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-completepropertydescriptor" title="CompletePropertyDescriptor ( Desc )"><span class="secnum">6.2.6.6</span> CompletePropertyDescriptor ( <var>Desc</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-lexical-environment-and-environment-record-specification-types" title="The Environment Record Specification Type"><span class="secnum">6.2.7</span> The Environment Record Specification Type</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-abstract-closure" title="The Abstract Closure Specification Type"><span class="secnum">6.2.8</span> The Abstract Closure Specification Type</a></li><li><span class="item-toggle">+</span><a href="ecmascript-data-types-and-values.html#sec-data-blocks" title="Data Blocks"><span class="secnum">6.2.9</span> Data Blocks</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-createbytedatablock" title="CreateByteDataBlock ( size )"><span class="secnum">6.2.9.1</span> CreateByteDataBlock ( <var>size</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-createsharedbytedatablock" title="CreateSharedByteDataBlock ( size )"><span class="secnum">6.2.9.2</span> CreateSharedByteDataBlock ( <var>size</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-copydatablockbytes" title="CopyDataBlockBytes ( toBlock, toIndex, fromBlock, fromIndex, count )"><span class="secnum">6.2.9.3</span> CopyDataBlockBytes ( <var>toBlock</var>, <var>toIndex</var>, <var>fromBlock</var>, <var>fromIndex</var>, <var>count</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-privateelement-specification-type" title="The PrivateElement Specification Type"><span class="secnum">6.2.10</span> The PrivateElement Specification Type</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-classfielddefinition-record-specification-type" title="The ClassFieldDefinition Record Specification Type"><span class="secnum">6.2.11</span> The ClassFieldDefinition Record Specification Type</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-private-names" title="Private Names"><span class="secnum">6.2.12</span> Private Names</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-data-types-and-values.html#sec-classstaticblockdefinition-record-specification-type" title="The ClassStaticBlockDefinition Record Specification Type"><span class="secnum">6.2.13</span> The ClassStaticBlockDefinition Record Specification Type</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="abstract-operations.html#sec-abstract-operations" title="Abstract Operations"><span class="secnum">7</span> Abstract Operations</a><ol class="toc"><li><span class="item-toggle">+</span><a href="abstract-operations.html#sec-type-conversion" title="Type Conversion"><span class="secnum">7.1</span> Type Conversion</a><ol class="toc"><li><span class="item-toggle">+</span><a href="abstract-operations.html#sec-toprimitive" title="ToPrimitive ( input [ , preferredType ] )"><span class="secnum">7.1.1</span> ToPrimitive ( <var>input</var> [ , <var>preferredType</var> ] )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-ordinarytoprimitive" title="OrdinaryToPrimitive ( O, hint )"><span class="secnum">7.1.1.1</span> OrdinaryToPrimitive ( <var>O</var>, <var>hint</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-toboolean" title="ToBoolean ( argument )"><span class="secnum">7.1.2</span> ToBoolean ( <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-tonumeric" title="ToNumeric ( value )"><span class="secnum">7.1.3</span> ToNumeric ( <var>value</var> )</a></li><li><span class="item-toggle">+</span><a href="abstract-operations.html#sec-tonumber" title="ToNumber ( argument )"><span class="secnum">7.1.4</span> ToNumber ( <var>argument</var> )</a><ol class="toc"><li><span class="item-toggle">+</span><a href="abstract-operations.html#sec-tonumber-applied-to-the-string-type" title="ToNumber Applied to the String Type"><span class="secnum">7.1.4.1</span> ToNumber Applied to the String Type</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-stringtonumber" title="StringToNumber ( str )"><span class="secnum">7.1.4.1.1</span> StringToNumber ( <var>str</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-runtime-semantics-stringnumericvalue" title="Runtime Semantics: StringNumericValue"><span class="secnum">7.1.4.1.2</span> RS: StringNumericValue</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-roundmvresult" title="RoundMVResult ( n )"><span class="secnum">7.1.4.1.3</span> RoundMVResult ( <var>n</var> )</a></li></ol></li></ol></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-tointegerorinfinity" title="ToIntegerOrInfinity ( argument )"><span class="secnum">7.1.5</span> ToIntegerOrInfinity ( <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-toint32" title="ToInt32 ( argument )"><span class="secnum">7.1.6</span> ToInt32 ( <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-touint32" title="ToUint32 ( argument )"><span class="secnum">7.1.7</span> ToUint32 ( <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-toint16" title="ToInt16 ( argument )"><span class="secnum">7.1.8</span> ToInt16 ( <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-touint16" title="ToUint16 ( argument )"><span class="secnum">7.1.9</span> ToUint16 ( <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-toint8" title="ToInt8 ( argument )"><span class="secnum">7.1.10</span> ToInt8 ( <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-touint8" title="ToUint8 ( argument )"><span class="secnum">7.1.11</span> ToUint8 ( <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-touint8clamp" title="ToUint8Clamp ( argument )"><span class="secnum">7.1.12</span> ToUint8Clamp ( <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-tobigint" title="ToBigInt ( argument )"><span class="secnum">7.1.13</span> ToBigInt ( <var>argument</var> )</a></li><li><span class="item-toggle">+</span><a href="abstract-operations.html#sec-stringtobigint" title="StringToBigInt ( str )"><span class="secnum">7.1.14</span> StringToBigInt ( <var>str</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-stringintegerliteral-grammar" title="StringIntegerLiteral Grammar"><span class="secnum">7.1.14.1</span> StringIntegerLiteral Grammar</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-runtime-semantics-mv-for-stringintegerliteral" title="Runtime Semantics: MV"><span class="secnum">7.1.14.2</span> RS: MV</a></li></ol></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-tobigint64" title="ToBigInt64 ( argument )"><span class="secnum">7.1.15</span> ToBigInt64 ( <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-tobiguint64" title="ToBigUint64 ( argument )"><span class="secnum">7.1.16</span> ToBigUint64 ( <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-tostring" title="ToString ( argument )"><span class="secnum">7.1.17</span> ToString ( <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-toobject" title="ToObject ( argument )"><span class="secnum">7.1.18</span> ToObject ( <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-topropertykey" title="ToPropertyKey ( argument )"><span class="secnum">7.1.19</span> ToPropertyKey ( <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-tolength" title="ToLength ( argument )"><span class="secnum">7.1.20</span> ToLength ( <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-canonicalnumericindexstring" title="CanonicalNumericIndexString ( argument )"><span class="secnum">7.1.21</span> CanonicalNumericIndexString ( <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-toindex" title="ToIndex ( value )"><span class="secnum">7.1.22</span> ToIndex ( <var>value</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="abstract-operations.html#sec-testing-and-comparison-operations" title="Testing and Comparison Operations"><span class="secnum">7.2</span> Testing and Comparison Operations</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-requireobjectcoercible" title="RequireObjectCoercible ( argument )"><span class="secnum">7.2.1</span> RequireObjectCoercible ( <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-isarray" title="IsArray ( argument )"><span class="secnum">7.2.2</span> IsArray ( <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-iscallable" title="IsCallable ( argument )"><span class="secnum">7.2.3</span> IsCallable ( <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-isconstructor" title="IsConstructor ( argument )"><span class="secnum">7.2.4</span> IsConstructor ( <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-isextensible-o" title="IsExtensible ( O )"><span class="secnum">7.2.5</span> IsExtensible ( <var>O</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-isregexp" title="IsRegExp ( argument )"><span class="secnum">7.2.6</span> IsRegExp ( <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-isstringwellformedunicode" title="Static Semantics: IsStringWellFormedUnicode ( string )"><span class="secnum">7.2.7</span> SS: IsStringWellFormedUnicode ( <var>string</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-sametype" title="SameType ( x, y )"><span class="secnum">7.2.8</span> SameType ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-samevalue" title="SameValue ( x, y )"><span class="secnum">7.2.9</span> SameValue ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-samevaluezero" title="SameValueZero ( x, y )"><span class="secnum">7.2.10</span> SameValueZero ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-samevaluenonnumber" title="SameValueNonNumber ( x, y )"><span class="secnum">7.2.11</span> SameValueNonNumber ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-islessthan" title="IsLessThan ( x, y, LeftFirst )"><span class="secnum">7.2.12</span> IsLessThan ( <var>x</var>, <var>y</var>, <var>LeftFirst</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-islooselyequal" title="IsLooselyEqual ( x, y )"><span class="secnum">7.2.13</span> IsLooselyEqual ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-isstrictlyequal" title="IsStrictlyEqual ( x, y )"><span class="secnum">7.2.14</span> IsStrictlyEqual ( <var>x</var>, <var>y</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="abstract-operations.html#sec-operations-on-objects" title="Operations on Objects"><span class="secnum">7.3</span> Operations on Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-makebasicobject" title="MakeBasicObject ( internalSlotsList )"><span class="secnum">7.3.1</span> MakeBasicObject ( <var>internalSlotsList</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-get-o-p" title="Get ( O, P )"><span class="secnum">7.3.2</span> Get ( <var>O</var>, <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-getv" title="GetV ( V, P )"><span class="secnum">7.3.3</span> GetV ( <var>V</var>, <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-set-o-p-v-throw" title="Set ( O, P, V, Throw )"><span class="secnum">7.3.4</span> Set ( <var>O</var>, <var>P</var>, <var>V</var>, <var>Throw</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-createdataproperty" title="CreateDataProperty ( O, P, V )"><span class="secnum">7.3.5</span> CreateDataProperty ( <var>O</var>, <var>P</var>, <var>V</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-createdatapropertyorthrow" title="CreateDataPropertyOrThrow ( O, P, V )"><span class="secnum">7.3.6</span> CreateDataPropertyOrThrow ( <var>O</var>, <var>P</var>, <var>V</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-createnonenumerabledatapropertyorthrow" title="CreateNonEnumerableDataPropertyOrThrow ( O, P, V )"><span class="secnum">7.3.7</span> CreateNonEnumerableDataPropertyOrThrow ( <var>O</var>, <var>P</var>, <var>V</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-definepropertyorthrow" title="DefinePropertyOrThrow ( O, P, desc )"><span class="secnum">7.3.8</span> DefinePropertyOrThrow ( <var>O</var>, <var>P</var>, <var>desc</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-deletepropertyorthrow" title="DeletePropertyOrThrow ( O, P )"><span class="secnum">7.3.9</span> DeletePropertyOrThrow ( <var>O</var>, <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-getmethod" title="GetMethod ( V, P )"><span class="secnum">7.3.10</span> GetMethod ( <var>V</var>, <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-hasproperty" title="HasProperty ( O, P )"><span class="secnum">7.3.11</span> HasProperty ( <var>O</var>, <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-hasownproperty" title="HasOwnProperty ( O, P )"><span class="secnum">7.3.12</span> HasOwnProperty ( <var>O</var>, <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-call" title="Call ( F, V [ , argumentsList ] )"><span class="secnum">7.3.13</span> Call ( <var>F</var>, <var>V</var> [ , <var>argumentsList</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-construct" title="Construct ( F [ , argumentsList [ , newTarget ] ] )"><span class="secnum">7.3.14</span> Construct ( <var>F</var> [ , <var>argumentsList</var> [ , <var>newTarget</var> ] ] )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-setintegritylevel" title="SetIntegrityLevel ( O, level )"><span class="secnum">7.3.15</span> SetIntegrityLevel ( <var>O</var>, <var>level</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-testintegritylevel" title="TestIntegrityLevel ( O, level )"><span class="secnum">7.3.16</span> TestIntegrityLevel ( <var>O</var>, <var>level</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-createarrayfromlist" title="CreateArrayFromList ( elements )"><span class="secnum">7.3.17</span> CreateArrayFromList ( <var>elements</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-lengthofarraylike" title="LengthOfArrayLike ( obj )"><span class="secnum">7.3.18</span> LengthOfArrayLike ( <var>obj</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-createlistfromarraylike" title="CreateListFromArrayLike ( obj [ , validElementTypes ] )"><span class="secnum">7.3.19</span> CreateListFromArrayLike ( <var>obj</var> [ , <var>validElementTypes</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-invoke" title="Invoke ( V, P [ , argumentsList ] )"><span class="secnum">7.3.20</span> Invoke ( <var>V</var>, <var>P</var> [ , <var>argumentsList</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-ordinaryhasinstance" title="OrdinaryHasInstance ( C, O )"><span class="secnum">7.3.21</span> OrdinaryHasInstance ( <var>C</var>, <var>O</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-speciesconstructor" title="SpeciesConstructor ( O, defaultConstructor )"><span class="secnum">7.3.22</span> SpeciesConstructor ( <var>O</var>, <var>defaultConstructor</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-enumerableownproperties" title="EnumerableOwnProperties ( O, kind )"><span class="secnum">7.3.23</span> EnumerableOwnProperties ( <var>O</var>, <var>kind</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-getfunctionrealm" title="GetFunctionRealm ( obj )"><span class="secnum">7.3.24</span> GetFunctionRealm ( <var>obj</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-copydataproperties" title="CopyDataProperties ( target, source, excludedItems )"><span class="secnum">7.3.25</span> CopyDataProperties ( <var>target</var>, <var>source</var>, <var>excludedItems</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-privateelementfind" title="PrivateElementFind ( O, P )"><span class="secnum">7.3.26</span> PrivateElementFind ( <var>O</var>, <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-privatefieldadd" title="PrivateFieldAdd ( O, P, value )"><span class="secnum">7.3.27</span> PrivateFieldAdd ( <var>O</var>, <var>P</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-privatemethodoraccessoradd" title="PrivateMethodOrAccessorAdd ( O, method )"><span class="secnum">7.3.28</span> PrivateMethodOrAccessorAdd ( <var>O</var>, <var>method</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-hostensurecanaddprivateelement" title="HostEnsureCanAddPrivateElement ( O )"><span class="secnum">7.3.29</span> HostEnsureCanAddPrivateElement ( <var>O</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-privateget" title="PrivateGet ( O, P )"><span class="secnum">7.3.30</span> PrivateGet ( <var>O</var>, <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-privateset" title="PrivateSet ( O, P, value )"><span class="secnum">7.3.31</span> PrivateSet ( <var>O</var>, <var>P</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-definefield" title="DefineField ( receiver, fieldRecord )"><span class="secnum">7.3.32</span> DefineField ( <var>receiver</var>, <var>fieldRecord</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-initializeinstanceelements" title="InitializeInstanceElements ( O, constructor )"><span class="secnum">7.3.33</span> InitializeInstanceElements ( <var>O</var>, <var>constructor</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-add-value-to-keyed-group" title="AddValueToKeyedGroup ( groups, key, value )"><span class="secnum">7.3.34</span> AddValueToKeyedGroup ( <var>groups</var>, <var>key</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-groupby" title="GroupBy ( items, callback, keyCoercion )"><span class="secnum">7.3.35</span> GroupBy ( <var>items</var>, <var>callback</var>, <var>keyCoercion</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-getoptionsobject" title="GetOptionsObject ( options )"><span class="secnum">7.3.36</span> GetOptionsObject ( <var>options</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-SetterThatIgnoresPrototypeProperties" title="SetterThatIgnoresPrototypeProperties ( thisValue, home, p, v )"><span class="secnum">7.3.37</span> SetterThatIgnoresPrototypeProperties ( <var>thisValue</var>, <var>home</var>, <var>p</var>, <var>v</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="abstract-operations.html#sec-operations-on-iterator-objects" title="Operations on Iterator Objects"><span class="secnum">7.4</span> Operations on Iterator Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-iterator-records" title="Iterator Records"><span class="secnum">7.4.1</span> Iterator Records</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-getiteratordirect" title="GetIteratorDirect ( obj )"><span class="secnum">7.4.2</span> GetIteratorDirect ( <var>obj</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-getiteratorfrommethod" title="GetIteratorFromMethod ( obj, method )"><span class="secnum">7.4.3</span> GetIteratorFromMethod ( <var>obj</var>, <var>method</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-getiterator" title="GetIterator ( obj, kind )"><span class="secnum">7.4.4</span> GetIterator ( <var>obj</var>, <var>kind</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-getiteratorflattenable" title="GetIteratorFlattenable ( obj, primitiveHandling )"><span class="secnum">7.4.5</span> GetIteratorFlattenable ( <var>obj</var>, <var>primitiveHandling</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-iteratornext" title="IteratorNext ( iteratorRecord [ , value ] )"><span class="secnum">7.4.6</span> IteratorNext ( <var>iteratorRecord</var> [ , <var>value</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-iteratorcomplete" title="IteratorComplete ( iteratorResult )"><span class="secnum">7.4.7</span> IteratorComplete ( <var>iteratorResult</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-iteratorvalue" title="IteratorValue ( iteratorResult )"><span class="secnum">7.4.8</span> IteratorValue ( <var>iteratorResult</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-iteratorstep" title="IteratorStep ( iteratorRecord )"><span class="secnum">7.4.9</span> IteratorStep ( <var>iteratorRecord</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-iteratorstepvalue" title="IteratorStepValue ( iteratorRecord )"><span class="secnum">7.4.10</span> IteratorStepValue ( <var>iteratorRecord</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-iteratorclose" title="IteratorClose ( iteratorRecord, completion )"><span class="secnum">7.4.11</span> IteratorClose ( <var>iteratorRecord</var>, <var>completion</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-iteratorcloseall" title="IteratorCloseAll ( iters, completion )"><span class="secnum">7.4.12</span> IteratorCloseAll ( <var>iters</var>, <var>completion</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-ifabruptcloseiterator" title="IfAbruptCloseIterator ( value, iteratorRecord )"><span class="secnum">7.4.13</span> IfAbruptCloseIterator ( <var>value</var>, <var>iteratorRecord</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-asynciteratorclose" title="AsyncIteratorClose ( iteratorRecord, completion )"><span class="secnum">7.4.14</span> AsyncIteratorClose ( <var>iteratorRecord</var>, <var>completion</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-ifabruptcloseasynciterator" title="IfAbruptCloseAsyncIterator ( value, iteratorRecord )"><span class="secnum">7.4.15</span> IfAbruptCloseAsyncIterator ( <var>value</var>, <var>iteratorRecord</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-createiterresultobject" title="CreateIteratorResultObject ( value, done )"><span class="secnum">7.4.16</span> CreateIteratorResultObject ( <var>value</var>, <var>done</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-createlistiteratorRecord" title="CreateListIteratorRecord ( list )"><span class="secnum">7.4.17</span> CreateListIteratorRecord ( <var>list</var> )</a></li><li><span class="item-toggle-none"></span><a href="abstract-operations.html#sec-iteratortolist" title="IteratorToList ( iteratorRecord )"><span class="secnum">7.4.18</span> IteratorToList ( <var>iteratorRecord</var> )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="syntax-directed-operations.html#sec-syntax-directed-operations" title="Syntax-Directed Operations"><span class="secnum">8</span> Syntax-Directed Operations</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">8.1</span> RS: Evaluation</a></li><li><span class="item-toggle">+</span><a href="syntax-directed-operations.html#sec-syntax-directed-operations-scope-analysis" title="Scope Analysis"><span class="secnum">8.2</span> Scope Analysis</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-static-semantics-boundnames" title="Static Semantics: BoundNames"><span class="secnum">8.2.1</span> SS: BoundNames</a></li><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-static-semantics-declarationpart" title="Static Semantics: DeclarationPart"><span class="secnum">8.2.2</span> SS: DeclarationPart</a></li><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-static-semantics-isconstantdeclaration" title="Static Semantics: IsConstantDeclaration"><span class="secnum">8.2.3</span> SS: IsConstantDeclaration</a></li><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-static-semantics-lexicallydeclarednames" title="Static Semantics: LexicallyDeclaredNames"><span class="secnum">8.2.4</span> SS: LexicallyDeclaredNames</a></li><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-static-semantics-lexicallyscopeddeclarations" title="Static Semantics: LexicallyScopedDeclarations"><span class="secnum">8.2.5</span> SS: LexicallyScopedDeclarations</a></li><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-static-semantics-vardeclarednames" title="Static Semantics: VarDeclaredNames"><span class="secnum">8.2.6</span> SS: VarDeclaredNames</a></li><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-static-semantics-varscopeddeclarations" title="Static Semantics: VarScopedDeclarations"><span class="secnum">8.2.7</span> SS: VarScopedDeclarations</a></li><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-static-semantics-toplevellexicallydeclarednames" title="Static Semantics: TopLevelLexicallyDeclaredNames"><span class="secnum">8.2.8</span> SS: TopLevelLexicallyDeclaredNames</a></li><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-static-semantics-toplevellexicallyscopeddeclarations" title="Static Semantics: TopLevelLexicallyScopedDeclarations"><span class="secnum">8.2.9</span> SS: TopLevelLexicallyScopedDeclarations</a></li><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-static-semantics-toplevelvardeclarednames" title="Static Semantics: TopLevelVarDeclaredNames"><span class="secnum">8.2.10</span> SS: TopLevelVarDeclaredNames</a></li><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-static-semantics-toplevelvarscopeddeclarations" title="Static Semantics: TopLevelVarScopedDeclarations"><span class="secnum">8.2.11</span> SS: TopLevelVarScopedDeclarations</a></li></ol></li><li><span class="item-toggle">+</span><a href="syntax-directed-operations.html#sec-syntax-directed-operations-labels" title="Labels"><span class="secnum">8.3</span> Labels</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-static-semantics-containsduplicatelabels" title="Static Semantics: ContainsDuplicateLabels"><span class="secnum">8.3.1</span> SS: ContainsDuplicateLabels</a></li><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-static-semantics-containsundefinedbreaktarget" title="Static Semantics: ContainsUndefinedBreakTarget"><span class="secnum">8.3.2</span> SS: ContainsUndefinedBreakTarget</a></li><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-static-semantics-containsundefinedcontinuetarget" title="Static Semantics: ContainsUndefinedContinueTarget"><span class="secnum">8.3.3</span> SS: ContainsUndefinedContinueTarget</a></li></ol></li><li><span class="item-toggle">+</span><a href="syntax-directed-operations.html#sec-syntax-directed-operations-function-name-inference" title="Function Name Inference"><span class="secnum">8.4</span> Function Name Inference</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-static-semantics-hasname" title="Static Semantics: HasName"><span class="secnum">8.4.1</span> SS: HasName</a></li><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-static-semantics-isfunctiondefinition" title="Static Semantics: IsFunctionDefinition"><span class="secnum">8.4.2</span> SS: IsFunctionDefinition</a></li><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-isanonymousfunctiondefinition" title="Static Semantics: IsAnonymousFunctionDefinition ( expr )"><span class="secnum">8.4.3</span> SS: IsAnonymousFunctionDefinition ( <var>expr</var> )</a></li><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-static-semantics-isidentifierref" title="Static Semantics: IsIdentifierRef"><span class="secnum">8.4.4</span> SS: IsIdentifierRef</a></li><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-runtime-semantics-namedevaluation" title="Runtime Semantics: NamedEvaluation"><span class="secnum">8.4.5</span> RS: NamedEvaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="syntax-directed-operations.html#sec-syntax-directed-operations-contains" title="Contains"><span class="secnum">8.5</span> Contains</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-static-semantics-contains" title="Static Semantics: Contains"><span class="secnum">8.5.1</span> SS: Contains</a></li><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-static-semantics-computedpropertycontains" title="Static Semantics: ComputedPropertyContains"><span class="secnum">8.5.2</span> SS: ComputedPropertyContains</a></li></ol></li><li><span class="item-toggle">+</span><a href="syntax-directed-operations.html#sec-syntax-directed-operations-miscellaneous" title="Miscellaneous"><span class="secnum">8.6</span> Miscellaneous</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-runtime-semantics-instantiatefunctionobject" title="Runtime Semantics: InstantiateFunctionObject"><span class="secnum">8.6.1</span> RS: InstantiateFunctionObject</a></li><li><span class="item-toggle">+</span><a href="syntax-directed-operations.html#sec-runtime-semantics-bindinginitialization" title="Runtime Semantics: BindingInitialization"><span class="secnum">8.6.2</span> RS: BindingInitialization</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-initializeboundname" title="InitializeBoundName ( name, value, environment )"><span class="secnum">8.6.2.1</span> InitializeBoundName ( <var>name</var>, <var>value</var>, <var>environment</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-runtime-semantics-iteratorbindinginitialization" title="Runtime Semantics: IteratorBindingInitialization"><span class="secnum">8.6.3</span> RS: IteratorBindingInitialization</a></li><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-static-semantics-assignmenttargettype" title="Static Semantics: AssignmentTargetType"><span class="secnum">8.6.4</span> SS: AssignmentTargetType</a></li><li><span class="item-toggle-none"></span><a href="syntax-directed-operations.html#sec-static-semantics-propname" title="Static Semantics: PropName"><span class="secnum">8.6.5</span> SS: PropName</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="executable-code-and-execution-contexts.html#sec-executable-code-and-execution-contexts" title="Executable Code and Execution Contexts"><span class="secnum">9</span> Executable Code and Execution Contexts</a><ol class="toc"><li><span class="item-toggle">+</span><a href="executable-code-and-execution-contexts.html#sec-environment-records" title="Environment Records"><span class="secnum">9.1</span> Environment Records</a><ol class="toc"><li><span class="item-toggle">+</span><a href="executable-code-and-execution-contexts.html#sec-the-environment-record-type-hierarchy" title="The Environment Record Type Hierarchy"><span class="secnum">9.1.1</span> The Environment Record Type Hierarchy</a><ol class="toc"><li><span class="item-toggle">+</span><a href="executable-code-and-execution-contexts.html#sec-declarative-environment-records" title="Declarative Environment Records"><span class="secnum">9.1.1.1</span> Declarative Environment Records</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-declarative-environment-records-hasbinding-n" title="HasBinding ( N )"><span class="secnum">9.1.1.1.1</span> HasBinding ( <var>N</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-declarative-environment-records-createmutablebinding-n-d" title="CreateMutableBinding ( N, D )"><span class="secnum">9.1.1.1.2</span> CreateMutableBinding ( <var>N</var>, <var>D</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-declarative-environment-records-createimmutablebinding-n-s" title="CreateImmutableBinding ( N, S )"><span class="secnum">9.1.1.1.3</span> CreateImmutableBinding ( <var>N</var>, <var>S</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-declarative-environment-records-initializebinding-n-v" title="InitializeBinding ( N, V )"><span class="secnum">9.1.1.1.4</span> InitializeBinding ( <var>N</var>, <var>V</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-declarative-environment-records-setmutablebinding-n-v-s" title="SetMutableBinding ( N, V, S )"><span class="secnum">9.1.1.1.5</span> SetMutableBinding ( <var>N</var>, <var>V</var>, <var>S</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-declarative-environment-records-getbindingvalue-n-s" title="GetBindingValue ( N, S )"><span class="secnum">9.1.1.1.6</span> GetBindingValue ( <var>N</var>, <var>S</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-declarative-environment-records-deletebinding-n" title="DeleteBinding ( N )"><span class="secnum">9.1.1.1.7</span> DeleteBinding ( <var>N</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-declarative-environment-records-hasthisbinding" title="HasThisBinding ( )"><span class="secnum">9.1.1.1.8</span> HasThisBinding ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-declarative-environment-records-getthisbinding" title="GetThisBinding ( )"><span class="secnum">9.1.1.1.9</span> GetThisBinding ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-declarative-environment-records-hassuperbinding" title="HasSuperBinding ( )"><span class="secnum">9.1.1.1.10</span> HasSuperBinding ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-declarative-environment-records-withbaseobject" title="WithBaseObject ( )"><span class="secnum">9.1.1.1.11</span> WithBaseObject ( )</a></li></ol></li><li><span class="item-toggle">+</span><a href="executable-code-and-execution-contexts.html#sec-object-environment-records" title="Object Environment Records"><span class="secnum">9.1.1.2</span> Object Environment Records</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-object-environment-records-hasbinding-n" title="HasBinding ( N )"><span class="secnum">9.1.1.2.1</span> HasBinding ( <var>N</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-object-environment-records-createmutablebinding-n-d" title="CreateMutableBinding ( N, D )"><span class="secnum">9.1.1.2.2</span> CreateMutableBinding ( <var>N</var>, <var>D</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-object-environment-records-createimmutablebinding-n-s" title="CreateImmutableBinding ( N, S )"><span class="secnum">9.1.1.2.3</span> CreateImmutableBinding ( <var>N</var>, <var>S</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-object-environment-records-initializebinding-n-v" title="InitializeBinding ( N, V )"><span class="secnum">9.1.1.2.4</span> InitializeBinding ( <var>N</var>, <var>V</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-object-environment-records-setmutablebinding-n-v-s" title="SetMutableBinding ( N, V, S )"><span class="secnum">9.1.1.2.5</span> SetMutableBinding ( <var>N</var>, <var>V</var>, <var>S</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-object-environment-records-getbindingvalue-n-s" title="GetBindingValue ( N, S )"><span class="secnum">9.1.1.2.6</span> GetBindingValue ( <var>N</var>, <var>S</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-object-environment-records-deletebinding-n" title="DeleteBinding ( N )"><span class="secnum">9.1.1.2.7</span> DeleteBinding ( <var>N</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-object-environment-records-hasthisbinding" title="HasThisBinding ( )"><span class="secnum">9.1.1.2.8</span> HasThisBinding ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-object-environment-records-getthisbinding" title="GetThisBinding ( )"><span class="secnum">9.1.1.2.9</span> GetThisBinding ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-object-environment-records-hassuperbinding" title="HasSuperBinding ( )"><span class="secnum">9.1.1.2.10</span> HasSuperBinding ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-object-environment-records-withbaseobject" title="WithBaseObject ( )"><span class="secnum">9.1.1.2.11</span> WithBaseObject ( )</a></li></ol></li><li><span class="item-toggle">+</span><a href="executable-code-and-execution-contexts.html#sec-function-environment-records" title="Function Environment Records"><span class="secnum">9.1.1.3</span> Function Environment Records</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-bindthisvalue" title="BindThisValue ( envRec, V )"><span class="secnum">9.1.1.3.1</span> BindThisValue ( <var>envRec</var>, <var>V</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-function-environment-records-hasthisbinding" title="HasThisBinding ( )"><span class="secnum">9.1.1.3.2</span> HasThisBinding ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-function-environment-records-getthisbinding" title="GetThisBinding ( )"><span class="secnum">9.1.1.3.3</span> GetThisBinding ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-function-environment-records-hassuperbinding" title="HasSuperBinding ( )"><span class="secnum">9.1.1.3.4</span> HasSuperBinding ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-getsuperbase" title="GetSuperBase ( envRec )"><span class="secnum">9.1.1.3.5</span> GetSuperBase ( <var>envRec</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="executable-code-and-execution-contexts.html#sec-global-environment-records" title="Global Environment Records"><span class="secnum">9.1.1.4</span> Global Environment Records</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-global-environment-records-hasbinding-n" title="HasBinding ( N )"><span class="secnum">9.1.1.4.1</span> HasBinding ( <var>N</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-global-environment-records-createmutablebinding-n-d" title="CreateMutableBinding ( N, D )"><span class="secnum">9.1.1.4.2</span> CreateMutableBinding ( <var>N</var>, <var>D</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-global-environment-records-createimmutablebinding-n-s" title="CreateImmutableBinding ( N, S )"><span class="secnum">9.1.1.4.3</span> CreateImmutableBinding ( <var>N</var>, <var>S</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-global-environment-records-initializebinding-n-v" title="InitializeBinding ( N, V )"><span class="secnum">9.1.1.4.4</span> InitializeBinding ( <var>N</var>, <var>V</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-global-environment-records-setmutablebinding-n-v-s" title="SetMutableBinding ( N, V, S )"><span class="secnum">9.1.1.4.5</span> SetMutableBinding ( <var>N</var>, <var>V</var>, <var>S</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-global-environment-records-getbindingvalue-n-s" title="GetBindingValue ( N, S )"><span class="secnum">9.1.1.4.6</span> GetBindingValue ( <var>N</var>, <var>S</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-global-environment-records-deletebinding-n" title="DeleteBinding ( N )"><span class="secnum">9.1.1.4.7</span> DeleteBinding ( <var>N</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-global-environment-records-hasthisbinding" title="HasThisBinding ( )"><span class="secnum">9.1.1.4.8</span> HasThisBinding ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-global-environment-records-getthisbinding" title="GetThisBinding ( )"><span class="secnum">9.1.1.4.9</span> GetThisBinding ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-global-environment-records-hassuperbinding" title="HasSuperBinding ( )"><span class="secnum">9.1.1.4.10</span> HasSuperBinding ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-global-environment-records-withbaseobject" title="WithBaseObject ( )"><span class="secnum">9.1.1.4.11</span> WithBaseObject ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-haslexicaldeclaration" title="HasLexicalDeclaration ( envRec, N )"><span class="secnum">9.1.1.4.12</span> HasLexicalDeclaration ( <var>envRec</var>, <var>N</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-hasrestrictedglobalproperty" title="HasRestrictedGlobalProperty ( envRec, N )"><span class="secnum">9.1.1.4.13</span> HasRestrictedGlobalProperty ( <var>envRec</var>, <var>N</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-candeclareglobalvar" title="CanDeclareGlobalVar ( envRec, N )"><span class="secnum">9.1.1.4.14</span> CanDeclareGlobalVar ( <var>envRec</var>, <var>N</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-candeclareglobalfunction" title="CanDeclareGlobalFunction ( envRec, N )"><span class="secnum">9.1.1.4.15</span> CanDeclareGlobalFunction ( <var>envRec</var>, <var>N</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-createglobalvarbinding" title="CreateGlobalVarBinding ( envRec, N, D )"><span class="secnum">9.1.1.4.16</span> CreateGlobalVarBinding ( <var>envRec</var>, <var>N</var>, <var>D</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-createglobalfunctionbinding" title="CreateGlobalFunctionBinding ( envRec, N, V, D )"><span class="secnum">9.1.1.4.17</span> CreateGlobalFunctionBinding ( <var>envRec</var>, <var>N</var>, <var>V</var>, <var>D</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="executable-code-and-execution-contexts.html#sec-module-environment-records" title="Module Environment Records"><span class="secnum">9.1.1.5</span> Module Environment Records</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-module-environment-records-getbindingvalue-n-s" title="GetBindingValue ( N, S )"><span class="secnum">9.1.1.5.1</span> GetBindingValue ( <var>N</var>, <var>S</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-module-environment-records-deletebinding-n" title="DeleteBinding ( N )"><span class="secnum">9.1.1.5.2</span> DeleteBinding ( <var>N</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-module-environment-records-hasthisbinding" title="HasThisBinding ( )"><span class="secnum">9.1.1.5.3</span> HasThisBinding ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-module-environment-records-getthisbinding" title="GetThisBinding ( )"><span class="secnum">9.1.1.5.4</span> GetThisBinding ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-createimportbinding" title="CreateImportBinding ( envRec, N, M, N2 )"><span class="secnum">9.1.1.5.5</span> CreateImportBinding ( <var>envRec</var>, <var>N</var>, <var>M</var>, <var>N2</var> )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="executable-code-and-execution-contexts.html#sec-environment-record-operations" title="Environment Record Operations"><span class="secnum">9.1.2</span> Environment Record Operations</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-getidentifierreference" title="GetIdentifierReference ( env, name, strict )"><span class="secnum">9.1.2.1</span> GetIdentifierReference ( <var>env</var>, <var>name</var>, <var>strict</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-newdeclarativeenvironment" title="NewDeclarativeEnvironment ( E )"><span class="secnum">9.1.2.2</span> NewDeclarativeEnvironment ( <var>E</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-newobjectenvironment" title="NewObjectEnvironment ( O, W, E )"><span class="secnum">9.1.2.3</span> NewObjectEnvironment ( <var>O</var>, <var>W</var>, <var>E</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-newfunctionenvironment" title="NewFunctionEnvironment ( F, newTarget )"><span class="secnum">9.1.2.4</span> NewFunctionEnvironment ( <var>F</var>, <var>newTarget</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-newglobalenvironment" title="NewGlobalEnvironment ( G, thisValue )"><span class="secnum">9.1.2.5</span> NewGlobalEnvironment ( <var>G</var>, <var>thisValue</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-newmoduleenvironment" title="NewModuleEnvironment ( E )"><span class="secnum">9.1.2.6</span> NewModuleEnvironment ( <var>E</var> )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="executable-code-and-execution-contexts.html#sec-privateenvironment-records" title="PrivateEnvironment Records"><span class="secnum">9.2</span> PrivateEnvironment Records</a><ol class="toc"><li><span class="item-toggle">+</span><a href="executable-code-and-execution-contexts.html#sec-privateenvironment-record-operations" title="PrivateEnvironment Record Operations"><span class="secnum">9.2.1</span> PrivateEnvironment Record Operations</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-newprivateenvironment" title="NewPrivateEnvironment ( outerPrivateEnv )"><span class="secnum">9.2.1.1</span> NewPrivateEnvironment ( <var>outerPrivateEnv</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-resolve-private-identifier" title="ResolvePrivateIdentifier ( privateEnv, identifier )"><span class="secnum">9.2.1.2</span> ResolvePrivateIdentifier ( <var>privateEnv</var>, <var>identifier</var> )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="executable-code-and-execution-contexts.html#sec-code-realms" title="Realms"><span class="secnum">9.3</span> Realms</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-initializehostdefinedrealm" title="InitializeHostDefinedRealm ( )"><span class="secnum">9.3.1</span> InitializeHostDefinedRealm ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-createintrinsics" title="CreateIntrinsics ( realmRec )"><span class="secnum">9.3.2</span> CreateIntrinsics ( <var>realmRec</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-setdefaultglobalbindings" title="SetDefaultGlobalBindings ( realmRec )"><span class="secnum">9.3.3</span> SetDefaultGlobalBindings ( <var>realmRec</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="executable-code-and-execution-contexts.html#sec-execution-contexts" title="Execution Contexts"><span class="secnum">9.4</span> Execution Contexts</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-getactivescriptormodule" title="GetActiveScriptOrModule ( )"><span class="secnum">9.4.1</span> GetActiveScriptOrModule ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-resolvebinding" title="ResolveBinding ( name [ , env ] )"><span class="secnum">9.4.2</span> ResolveBinding ( <var>name</var> [ , <var>env</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-getthisenvironment" title="GetThisEnvironment ( )"><span class="secnum">9.4.3</span> GetThisEnvironment ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-resolvethisbinding" title="ResolveThisBinding ( )"><span class="secnum">9.4.4</span> ResolveThisBinding ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-getnewtarget" title="GetNewTarget ( )"><span class="secnum">9.4.5</span> GetNewTarget ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-getglobalobject" title="GetGlobalObject ( )"><span class="secnum">9.4.6</span> GetGlobalObject ( )</a></li></ol></li><li><span class="item-toggle">+</span><a href="executable-code-and-execution-contexts.html#sec-jobs" title="Jobs and Host Operations to Enqueue Jobs"><span class="secnum">9.5</span> Jobs and Host Operations to Enqueue Jobs</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-jobcallback-records" title="JobCallback Records"><span class="secnum">9.5.1</span> JobCallback Records</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-hostmakejobcallback" title="HostMakeJobCallback ( callback )"><span class="secnum">9.5.2</span> HostMakeJobCallback ( <var>callback</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-hostcalljobcallback" title="HostCallJobCallback ( jobCallback, V, argumentsList )"><span class="secnum">9.5.3</span> HostCallJobCallback ( <var>jobCallback</var>, <var>V</var>, <var>argumentsList</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-hostenqueuegenericjob" title="HostEnqueueGenericJob ( job, realm )"><span class="secnum">9.5.4</span> HostEnqueueGenericJob ( <var>job</var>, <var>realm</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-hostenqueuepromisejob" title="HostEnqueuePromiseJob ( job, realm )"><span class="secnum">9.5.5</span> HostEnqueuePromiseJob ( <var>job</var>, <var>realm</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-hostenqueuetimeoutjob" title="HostEnqueueTimeoutJob ( timeoutJob, realm, milliseconds )"><span class="secnum">9.5.6</span> HostEnqueueTimeoutJob ( <var>timeoutJob</var>, <var>realm</var>, <var>milliseconds</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="executable-code-and-execution-contexts.html#sec-agents" title="Agents"><span class="secnum">9.6</span> Agents</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-agentsignifier" title="AgentSignifier ( )"><span class="secnum">9.6.1</span> AgentSignifier ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-agentcansuspend" title="AgentCanSuspend ( )"><span class="secnum">9.6.2</span> AgentCanSuspend ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-IncrementModuleAsyncEvaluationCount" title="IncrementModuleAsyncEvaluationCount ( )"><span class="secnum">9.6.3</span> IncrementModuleAsyncEvaluationCount ( )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-agent-clusters" title="Agent Clusters"><span class="secnum">9.7</span> Agent Clusters</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-forward-progress" title="Forward Progress"><span class="secnum">9.8</span> Forward Progress</a></li><li><span class="item-toggle">+</span><a href="executable-code-and-execution-contexts.html#sec-weakref-processing-model" title="Processing Model of WeakRef and FinalizationRegistry Targets"><span class="secnum">9.9</span> Processing Model of WeakRef and FinalizationRegistry Targets</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-weakref-invariants" title="Objectives"><span class="secnum">9.9.1</span> Objectives</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-liveness" title="Liveness"><span class="secnum">9.9.2</span> Liveness</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-weakref-execution" title="Execution"><span class="secnum">9.9.3</span> Execution</a></li><li><span class="item-toggle">+</span><a href="executable-code-and-execution-contexts.html#sec-weakref-host-hooks" title="Host Hooks"><span class="secnum">9.9.4</span> Host Hooks</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-host-cleanup-finalization-registry" title="HostEnqueueFinalizationRegistryCleanupJob ( finalizationRegistry )"><span class="secnum">9.9.4.1</span> HostEnqueueFinalizationRegistryCleanupJob ( <var>finalizationRegistry</var> )</a></li></ol></li></ol></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-clear-kept-objects" title="ClearKeptObjects ( )"><span class="secnum">9.10</span> ClearKeptObjects ( )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-addtokeptobjects" title="AddToKeptObjects ( value )"><span class="secnum">9.11</span> AddToKeptObjects ( <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-cleanup-finalization-registry" title="CleanupFinalizationRegistry ( finalizationRegistry )"><span class="secnum">9.12</span> CleanupFinalizationRegistry ( <var>finalizationRegistry</var> )</a></li><li><span class="item-toggle-none"></span><a href="executable-code-and-execution-contexts.html#sec-canbeheldweakly" title="CanBeHeldWeakly ( v )"><span class="secnum">9.13</span> CanBeHeldWeakly ( <var>v</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinary-and-exotic-objects-behaviours" title="Ordinary and Exotic Objects Behaviours"><span class="secnum">10</span> Ordinary and Exotic Objects Behaviours</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinary-object-internal-methods-and-internal-slots" title="Ordinary Object Internal Methods and Internal Slots"><span class="secnum">10.1</span> Ordinary Object Internal Methods and Internal Slots</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinary-object-internal-methods-and-internal-slots-getprototypeof" title="[[GetPrototypeOf]] ( )"><span class="secnum">10.1.1</span> <var class="field">[[GetPrototypeOf]]</var> ( )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinarygetprototypeof" title="OrdinaryGetPrototypeOf ( O )"><span class="secnum">10.1.1.1</span> OrdinaryGetPrototypeOf ( <var>O</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinary-object-internal-methods-and-internal-slots-setprototypeof-v" title="[[SetPrototypeOf]] ( V )"><span class="secnum">10.1.2</span> <var class="field">[[SetPrototypeOf]]</var> ( <var>V</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinarysetprototypeof" title="OrdinarySetPrototypeOf ( O, V )"><span class="secnum">10.1.2.1</span> OrdinarySetPrototypeOf ( <var>O</var>, <var>V</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinary-object-internal-methods-and-internal-slots-isextensible" title="[[IsExtensible]] ( )"><span class="secnum">10.1.3</span> <var class="field">[[IsExtensible]]</var> ( )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinaryisextensible" title="OrdinaryIsExtensible ( O )"><span class="secnum">10.1.3.1</span> OrdinaryIsExtensible ( <var>O</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinary-object-internal-methods-and-internal-slots-preventextensions" title="[[PreventExtensions]] ( )"><span class="secnum">10.1.4</span> <var class="field">[[PreventExtensions]]</var> ( )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinarypreventextensions" title="OrdinaryPreventExtensions ( O )"><span class="secnum">10.1.4.1</span> OrdinaryPreventExtensions ( <var>O</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinary-object-internal-methods-and-internal-slots-getownproperty-p" title="[[GetOwnProperty]] ( P )"><span class="secnum">10.1.5</span> <var class="field">[[GetOwnProperty]]</var> ( <var>P</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinarygetownproperty" title="OrdinaryGetOwnProperty ( O, P )"><span class="secnum">10.1.5.1</span> OrdinaryGetOwnProperty ( <var>O</var>, <var>P</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinary-object-internal-methods-and-internal-slots-defineownproperty-p-desc" title="[[DefineOwnProperty]] ( P, Desc )"><span class="secnum">10.1.6</span> <var class="field">[[DefineOwnProperty]]</var> ( <var>P</var>, <var>Desc</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinarydefineownproperty" title="OrdinaryDefineOwnProperty ( O, P, Desc )"><span class="secnum">10.1.6.1</span> OrdinaryDefineOwnProperty ( <var>O</var>, <var>P</var>, <var>Desc</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-iscompatiblepropertydescriptor" title="IsCompatiblePropertyDescriptor ( Extensible, Desc, Current )"><span class="secnum">10.1.6.2</span> IsCompatiblePropertyDescriptor ( <var>Extensible</var>, <var>Desc</var>, <var>Current</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-validateandapplypropertydescriptor" title="ValidateAndApplyPropertyDescriptor ( O, P, extensible, Desc, current )"><span class="secnum">10.1.6.3</span> ValidateAndApplyPropertyDescriptor ( <var>O</var>, <var>P</var>, <var>extensible</var>, <var>Desc</var>, <var>current</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinary-object-internal-methods-and-internal-slots-hasproperty-p" title="[[HasProperty]] ( P )"><span class="secnum">10.1.7</span> <var class="field">[[HasProperty]]</var> ( <var>P</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinaryhasproperty" title="OrdinaryHasProperty ( O, P )"><span class="secnum">10.1.7.1</span> OrdinaryHasProperty ( <var>O</var>, <var>P</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinary-object-internal-methods-and-internal-slots-get-p-receiver" title="[[Get]] ( P, Receiver )"><span class="secnum">10.1.8</span> <var class="field">[[Get]]</var> ( <var>P</var>, <var>Receiver</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinaryget" title="OrdinaryGet ( O, P, Receiver )"><span class="secnum">10.1.8.1</span> OrdinaryGet ( <var>O</var>, <var>P</var>, <var>Receiver</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinary-object-internal-methods-and-internal-slots-set-p-v-receiver" title="[[Set]] ( P, V, Receiver )"><span class="secnum">10.1.9</span> <var class="field">[[Set]]</var> ( <var>P</var>, <var>V</var>, <var>Receiver</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinaryset" title="OrdinarySet ( O, P, V, Receiver )"><span class="secnum">10.1.9.1</span> OrdinarySet ( <var>O</var>, <var>P</var>, <var>V</var>, <var>Receiver</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinarysetwithowndescriptor" title="OrdinarySetWithOwnDescriptor ( O, P, V, Receiver, ownDesc )"><span class="secnum">10.1.9.2</span> OrdinarySetWithOwnDescriptor ( <var>O</var>, <var>P</var>, <var>V</var>, <var>Receiver</var>, <var>ownDesc</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinary-object-internal-methods-and-internal-slots-delete-p" title="[[Delete]] ( P )"><span class="secnum">10.1.10</span> <var class="field">[[Delete]]</var> ( <var>P</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinarydelete" title="OrdinaryDelete ( O, P )"><span class="secnum">10.1.10.1</span> OrdinaryDelete ( <var>O</var>, <var>P</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinary-object-internal-methods-and-internal-slots-ownpropertykeys" title="[[OwnPropertyKeys]] ( )"><span class="secnum">10.1.11</span> <var class="field">[[OwnPropertyKeys]]</var> ( )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinaryownpropertykeys" title="OrdinaryOwnPropertyKeys ( O )"><span class="secnum">10.1.11.1</span> OrdinaryOwnPropertyKeys ( <var>O</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinaryobjectcreate" title="OrdinaryObjectCreate ( proto [ , additionalInternalSlotsList ] )"><span class="secnum">10.1.12</span> OrdinaryObjectCreate ( <var>proto</var> [ , <var>additionalInternalSlotsList</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinarycreatefromconstructor" title="OrdinaryCreateFromConstructor ( constructor, intrinsicDefaultProto [ , internalSlotsList ] )"><span class="secnum">10.1.13</span> OrdinaryCreateFromConstructor ( <var>constructor</var>, <var>intrinsicDefaultProto</var> [ , <var>internalSlotsList</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-getprototypefromconstructor" title="GetPrototypeFromConstructor ( constructor, intrinsicDefaultProto )"><span class="secnum">10.1.14</span> GetPrototypeFromConstructor ( <var>constructor</var>, <var>intrinsicDefaultProto</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-requireinternalslot" title="RequireInternalSlot ( O, internalSlot )"><span class="secnum">10.1.15</span> RequireInternalSlot ( <var>O</var>, <var>internalSlot</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ecmascript-function-objects" title="ECMAScript Function Objects"><span class="secnum">10.2</span> ECMAScript Function Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ecmascript-function-objects-call-thisargument-argumentslist" title="[[Call]] ( thisArgument, argumentsList )"><span class="secnum">10.2.1</span> <var class="field">[[Call]]</var> ( <var>thisArgument</var>, <var>argumentsList</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-prepareforordinarycall" title="PrepareForOrdinaryCall ( F, newTarget )"><span class="secnum">10.2.1.1</span> PrepareForOrdinaryCall ( <var>F</var>, <var>newTarget</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinarycallbindthis" title="OrdinaryCallBindThis ( F, calleeContext, thisArgument )"><span class="secnum">10.2.1.2</span> OrdinaryCallBindThis ( <var>F</var>, <var>calleeContext</var>, <var>thisArgument</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-runtime-semantics-evaluatebody" title="Runtime Semantics: EvaluateBody"><span class="secnum">10.2.1.3</span> RS: EvaluateBody</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinarycallevaluatebody" title="OrdinaryCallEvaluateBody ( F, argumentsList )"><span class="secnum">10.2.1.4</span> OrdinaryCallEvaluateBody ( <var>F</var>, <var>argumentsList</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ecmascript-function-objects-construct-argumentslist-newtarget" title="[[Construct]] ( argumentsList, newTarget )"><span class="secnum">10.2.2</span> <var class="field">[[Construct]]</var> ( <var>argumentsList</var>, <var>newTarget</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-ordinaryfunctioncreate" title="OrdinaryFunctionCreate ( functionPrototype, sourceText, ParameterList, Body, thisMode, env, privateEnv )"><span class="secnum">10.2.3</span> OrdinaryFunctionCreate ( <var>functionPrototype</var>, <var>sourceText</var>, <var>ParameterList</var>, <var>Body</var>, <var>thisMode</var>, <var>env</var>, <var>privateEnv</var> )</a></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-addrestrictedfunctionproperties" title="AddRestrictedFunctionProperties ( F, realm )"><span class="secnum">10.2.4</span> AddRestrictedFunctionProperties ( <var>F</var>, <var>realm</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-%throwtypeerror%" title="%ThrowTypeError% ( )"><span class="secnum">10.2.4.1</span> %ThrowTypeError% ( )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-makeconstructor" title="MakeConstructor ( F [ , writablePrototype [ , prototype ] ] )"><span class="secnum">10.2.5</span> MakeConstructor ( <var>F</var> [ , <var>writablePrototype</var> [ , <var>prototype</var> ] ] )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-makeclassconstructor" title="MakeClassConstructor ( F )"><span class="secnum">10.2.6</span> MakeClassConstructor ( <var>F</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-makemethod" title="MakeMethod ( F, homeObject )"><span class="secnum">10.2.7</span> MakeMethod ( <var>F</var>, <var>homeObject</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-definemethodproperty" title="DefineMethodProperty ( homeObject, key, closure, enumerable )"><span class="secnum">10.2.8</span> DefineMethodProperty ( <var>homeObject</var>, <var>key</var>, <var>closure</var>, <var>enumerable</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-setfunctionname" title="SetFunctionName ( F, name [ , prefix ] )"><span class="secnum">10.2.9</span> SetFunctionName ( <var>F</var>, <var>name</var> [ , <var>prefix</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-setfunctionlength" title="SetFunctionLength ( F, length )"><span class="secnum">10.2.10</span> SetFunctionLength ( <var>F</var>, <var>length</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-functiondeclarationinstantiation" title="FunctionDeclarationInstantiation ( func, argumentsList )"><span class="secnum">10.2.11</span> FunctionDeclarationInstantiation ( <var>func</var>, <var>argumentsList</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-built-in-function-objects" title="Built-in Function Objects"><span class="secnum">10.3</span> Built-in Function Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-built-in-function-objects-call-thisargument-argumentslist" title="[[Call]] ( thisArgument, argumentsList )"><span class="secnum">10.3.1</span> <var class="field">[[Call]]</var> ( <var>thisArgument</var>, <var>argumentsList</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-built-in-function-objects-construct-argumentslist-newtarget" title="[[Construct]] ( argumentsList, newTarget )"><span class="secnum">10.3.2</span> <var class="field">[[Construct]]</var> ( <var>argumentsList</var>, <var>newTarget</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-builtincallorconstruct" title="BuiltinCallOrConstruct ( F, thisArgument, argumentsList, newTarget )"><span class="secnum">10.3.3</span> BuiltinCallOrConstruct ( <var>F</var>, <var>thisArgument</var>, <var>argumentsList</var>, <var>newTarget</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-createbuiltinfunction" title="CreateBuiltinFunction ( behaviour, length, name, additionalInternalSlotsList [ , realm [ , prototype [ , prefix [ , async ] ] ] ] )"><span class="secnum">10.3.4</span> CreateBuiltinFunction ( <var>behaviour</var>, <var>length</var>, <var>name</var>, <var>additionalInternalSlotsList</var> [ , <var>realm</var> [ , <var>prototype</var> [ , <var>prefix</var> [ , <var>async</var> ] ] ] ] )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-built-in-exotic-object-internal-methods-and-slots" title="Built-in Exotic Object Internal Methods and Slots"><span class="secnum">10.4</span> Built-in Exotic Object Internal Methods and Slots</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-bound-function-exotic-objects" title="Bound Function Exotic Objects"><span class="secnum">10.4.1</span> Bound Function Exotic Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-bound-function-exotic-objects-call-thisargument-argumentslist" title="[[Call]] ( thisArgument, argumentsList )"><span class="secnum">10.4.1.1</span> <var class="field">[[Call]]</var> ( <var>thisArgument</var>, <var>argumentsList</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-bound-function-exotic-objects-construct-argumentslist-newtarget" title="[[Construct]] ( argumentsList, newTarget )"><span class="secnum">10.4.1.2</span> <var class="field">[[Construct]]</var> ( <var>argumentsList</var>, <var>newTarget</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-boundfunctioncreate" title="BoundFunctionCreate ( targetFunction, boundThis, boundArgs )"><span class="secnum">10.4.1.3</span> BoundFunctionCreate ( <var>targetFunction</var>, <var>boundThis</var>, <var>boundArgs</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-array-exotic-objects" title="Array Exotic Objects"><span class="secnum">10.4.2</span> Array Exotic Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-array-exotic-objects-defineownproperty-p-desc" title="[[DefineOwnProperty]] ( P, Desc )"><span class="secnum">10.4.2.1</span> <var class="field">[[DefineOwnProperty]]</var> ( <var>P</var>, <var>Desc</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-arraycreate" title="ArrayCreate ( length [ , proto ] )"><span class="secnum">10.4.2.2</span> ArrayCreate ( <var>length</var> [ , <var>proto</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-arrayspeciescreate" title="ArraySpeciesCreate ( originalArray, length )"><span class="secnum">10.4.2.3</span> ArraySpeciesCreate ( <var>originalArray</var>, <var>length</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-arraysetlength" title="ArraySetLength ( A, Desc )"><span class="secnum">10.4.2.4</span> ArraySetLength ( <var>A</var>, <var>Desc</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-string-exotic-objects" title="String Exotic Objects"><span class="secnum">10.4.3</span> String Exotic Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-string-exotic-objects-getownproperty-p" title="[[GetOwnProperty]] ( P )"><span class="secnum">10.4.3.1</span> <var class="field">[[GetOwnProperty]]</var> ( <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-string-exotic-objects-defineownproperty-p-desc" title="[[DefineOwnProperty]] ( P, Desc )"><span class="secnum">10.4.3.2</span> <var class="field">[[DefineOwnProperty]]</var> ( <var>P</var>, <var>Desc</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-string-exotic-objects-ownpropertykeys" title="[[OwnPropertyKeys]] ( )"><span class="secnum">10.4.3.3</span> <var class="field">[[OwnPropertyKeys]]</var> ( )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-stringcreate" title="StringCreate ( value, prototype )"><span class="secnum">10.4.3.4</span> StringCreate ( <var>value</var>, <var>prototype</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-stringgetownproperty" title="StringGetOwnProperty ( S, P )"><span class="secnum">10.4.3.5</span> StringGetOwnProperty ( <var>S</var>, <var>P</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-arguments-exotic-objects" title="Arguments Exotic Objects"><span class="secnum">10.4.4</span> Arguments Exotic Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-arguments-exotic-objects-getownproperty-p" title="[[GetOwnProperty]] ( P )"><span class="secnum">10.4.4.1</span> <var class="field">[[GetOwnProperty]]</var> ( <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-arguments-exotic-objects-defineownproperty-p-desc" title="[[DefineOwnProperty]] ( P, Desc )"><span class="secnum">10.4.4.2</span> <var class="field">[[DefineOwnProperty]]</var> ( <var>P</var>, <var>Desc</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-arguments-exotic-objects-get-p-receiver" title="[[Get]] ( P, Receiver )"><span class="secnum">10.4.4.3</span> <var class="field">[[Get]]</var> ( <var>P</var>, <var>Receiver</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-arguments-exotic-objects-set-p-v-receiver" title="[[Set]] ( P, V, Receiver )"><span class="secnum">10.4.4.4</span> <var class="field">[[Set]]</var> ( <var>P</var>, <var>V</var>, <var>Receiver</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-arguments-exotic-objects-delete-p" title="[[Delete]] ( P )"><span class="secnum">10.4.4.5</span> <var class="field">[[Delete]]</var> ( <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-createunmappedargumentsobject" title="CreateUnmappedArgumentsObject ( argumentsList )"><span class="secnum">10.4.4.6</span> CreateUnmappedArgumentsObject ( <var>argumentsList</var> )</a></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-createmappedargumentsobject" title="CreateMappedArgumentsObject ( func, formals, argumentsList, env )"><span class="secnum">10.4.4.7</span> CreateMappedArgumentsObject ( <var>func</var>, <var>formals</var>, <var>argumentsList</var>, <var>env</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-makearggetter" title="MakeArgGetter ( name, env )"><span class="secnum">10.4.4.7.1</span> MakeArgGetter ( <var>name</var>, <var>env</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-makeargsetter" title="MakeArgSetter ( name, env )"><span class="secnum">10.4.4.7.2</span> MakeArgSetter ( <var>name</var>, <var>env</var> )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-typedarray-exotic-objects" title="TypedArray Exotic Objects"><span class="secnum">10.4.5</span> TypedArray Exotic Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-typedarray-preventextensions" title="[[PreventExtensions]] ( )"><span class="secnum">10.4.5.1</span> <var class="field">[[PreventExtensions]]</var> ( )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-typedarray-getownproperty" title="[[GetOwnProperty]] ( P )"><span class="secnum">10.4.5.2</span> <var class="field">[[GetOwnProperty]]</var> ( <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-typedarray-hasproperty" title="[[HasProperty]] ( P )"><span class="secnum">10.4.5.3</span> <var class="field">[[HasProperty]]</var> ( <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-typedarray-defineownproperty" title="[[DefineOwnProperty]] ( P, Desc )"><span class="secnum">10.4.5.4</span> <var class="field">[[DefineOwnProperty]]</var> ( <var>P</var>, <var>Desc</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-typedarray-get" title="[[Get]] ( P, Receiver )"><span class="secnum">10.4.5.5</span> <var class="field">[[Get]]</var> ( <var>P</var>, <var>Receiver</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-typedarray-set" title="[[Set]] ( P, V, Receiver )"><span class="secnum">10.4.5.6</span> <var class="field">[[Set]]</var> ( <var>P</var>, <var>V</var>, <var>Receiver</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-typedarray-delete" title="[[Delete]] ( P )"><span class="secnum">10.4.5.7</span> <var class="field">[[Delete]]</var> ( <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-typedarray-ownpropertykeys" title="[[OwnPropertyKeys]] ( )"><span class="secnum">10.4.5.8</span> <var class="field">[[OwnPropertyKeys]]</var> ( )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-typedarray-with-buffer-witness-records" title="TypedArray With Buffer Witness Records"><span class="secnum">10.4.5.9</span> TypedArray With Buffer Witness Records</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-maketypedarraywithbufferwitnessrecord" title="MakeTypedArrayWithBufferWitnessRecord ( obj, order )"><span class="secnum">10.4.5.10</span> MakeTypedArrayWithBufferWitnessRecord ( <var>obj</var>, <var>order</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-typedarraycreate" title="TypedArrayCreate ( prototype )"><span class="secnum">10.4.5.11</span> TypedArrayCreate ( <var>prototype</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-typedarraybytelength" title="TypedArrayByteLength ( taRecord )"><span class="secnum">10.4.5.12</span> TypedArrayByteLength ( <var>taRecord</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-typedarraylength" title="TypedArrayLength ( taRecord )"><span class="secnum">10.4.5.13</span> TypedArrayLength ( <var>taRecord</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-istypedarrayoutofbounds" title="IsTypedArrayOutOfBounds ( taRecord )"><span class="secnum">10.4.5.14</span> IsTypedArrayOutOfBounds ( <var>taRecord</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-istypedarrayfixedlength" title="IsTypedArrayFixedLength ( O )"><span class="secnum">10.4.5.15</span> IsTypedArrayFixedLength ( <var>O</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-isvalidintegerindex" title="IsValidIntegerIndex ( O, index )"><span class="secnum">10.4.5.16</span> IsValidIntegerIndex ( <var>O</var>, <var>index</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-typedarraygetelement" title="TypedArrayGetElement ( O, index )"><span class="secnum">10.4.5.17</span> TypedArrayGetElement ( <var>O</var>, <var>index</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-typedarraysetelement" title="TypedArraySetElement ( O, index, value )"><span class="secnum">10.4.5.18</span> TypedArraySetElement ( <var>O</var>, <var>index</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-isarraybufferviewoutofbounds" title="IsArrayBufferViewOutOfBounds ( O )"><span class="secnum">10.4.5.19</span> IsArrayBufferViewOutOfBounds ( <var>O</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-module-namespace-exotic-objects" title="Module Namespace Exotic Objects"><span class="secnum">10.4.6</span> Module Namespace Exotic Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-module-namespace-exotic-objects-getprototypeof" title="[[GetPrototypeOf]] ( )"><span class="secnum">10.4.6.1</span> <var class="field">[[GetPrototypeOf]]</var> ( )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-module-namespace-exotic-objects-setprototypeof-v" title="[[SetPrototypeOf]] ( V )"><span class="secnum">10.4.6.2</span> <var class="field">[[SetPrototypeOf]]</var> ( <var>V</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-module-namespace-exotic-objects-isextensible" title="[[IsExtensible]] ( )"><span class="secnum">10.4.6.3</span> <var class="field">[[IsExtensible]]</var> ( )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-module-namespace-exotic-objects-preventextensions" title="[[PreventExtensions]] ( )"><span class="secnum">10.4.6.4</span> <var class="field">[[PreventExtensions]]</var> ( )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-module-namespace-exotic-objects-getownproperty-p" title="[[GetOwnProperty]] ( P )"><span class="secnum">10.4.6.5</span> <var class="field">[[GetOwnProperty]]</var> ( <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-module-namespace-exotic-objects-defineownproperty-p-desc" title="[[DefineOwnProperty]] ( P, Desc )"><span class="secnum">10.4.6.6</span> <var class="field">[[DefineOwnProperty]]</var> ( <var>P</var>, <var>Desc</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-module-namespace-exotic-objects-hasproperty-p" title="[[HasProperty]] ( P )"><span class="secnum">10.4.6.7</span> <var class="field">[[HasProperty]]</var> ( <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-module-namespace-exotic-objects-get-p-receiver" title="[[Get]] ( P, Receiver )"><span class="secnum">10.4.6.8</span> <var class="field">[[Get]]</var> ( <var>P</var>, <var>Receiver</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-module-namespace-exotic-objects-set-p-v-receiver" title="[[Set]] ( P, V, Receiver )"><span class="secnum">10.4.6.9</span> <var class="field">[[Set]]</var> ( <var>P</var>, <var>V</var>, <var>Receiver</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-module-namespace-exotic-objects-delete-p" title="[[Delete]] ( P )"><span class="secnum">10.4.6.10</span> <var class="field">[[Delete]]</var> ( <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-module-namespace-exotic-objects-ownpropertykeys" title="[[OwnPropertyKeys]] ( )"><span class="secnum">10.4.6.11</span> <var class="field">[[OwnPropertyKeys]]</var> ( )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-modulenamespacecreate" title="ModuleNamespaceCreate ( module, exports )"><span class="secnum">10.4.6.12</span> ModuleNamespaceCreate ( <var>module</var>, <var>exports</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-immutable-prototype-exotic-objects" title="Immutable Prototype Exotic Objects"><span class="secnum">10.4.7</span> Immutable Prototype Exotic Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-immutable-prototype-exotic-objects-setprototypeof-v" title="[[SetPrototypeOf]] ( V )"><span class="secnum">10.4.7.1</span> <var class="field">[[SetPrototypeOf]]</var> ( <var>V</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-set-immutable-prototype" title="SetImmutablePrototype ( O, V )"><span class="secnum">10.4.7.2</span> SetImmutablePrototype ( <var>O</var>, <var>V</var> )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ordinary-and-exotic-objects-behaviours.html#sec-proxy-object-internal-methods-and-internal-slots" title="Proxy Object Internal Methods and Internal Slots"><span class="secnum">10.5</span> Proxy Object Internal Methods and Internal Slots</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-proxy-object-internal-methods-and-internal-slots-getprototypeof" title="[[GetPrototypeOf]] ( )"><span class="secnum">10.5.1</span> <var class="field">[[GetPrototypeOf]]</var> ( )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-proxy-object-internal-methods-and-internal-slots-setprototypeof-v" title="[[SetPrototypeOf]] ( V )"><span class="secnum">10.5.2</span> <var class="field">[[SetPrototypeOf]]</var> ( <var>V</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-proxy-object-internal-methods-and-internal-slots-isextensible" title="[[IsExtensible]] ( )"><span class="secnum">10.5.3</span> <var class="field">[[IsExtensible]]</var> ( )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-proxy-object-internal-methods-and-internal-slots-preventextensions" title="[[PreventExtensions]] ( )"><span class="secnum">10.5.4</span> <var class="field">[[PreventExtensions]]</var> ( )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-proxy-object-internal-methods-and-internal-slots-getownproperty-p" title="[[GetOwnProperty]] ( P )"><span class="secnum">10.5.5</span> <var class="field">[[GetOwnProperty]]</var> ( <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-proxy-object-internal-methods-and-internal-slots-defineownproperty-p-desc" title="[[DefineOwnProperty]] ( P, Desc )"><span class="secnum">10.5.6</span> <var class="field">[[DefineOwnProperty]]</var> ( <var>P</var>, <var>Desc</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-proxy-object-internal-methods-and-internal-slots-hasproperty-p" title="[[HasProperty]] ( P )"><span class="secnum">10.5.7</span> <var class="field">[[HasProperty]]</var> ( <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-proxy-object-internal-methods-and-internal-slots-get-p-receiver" title="[[Get]] ( P, Receiver )"><span class="secnum">10.5.8</span> <var class="field">[[Get]]</var> ( <var>P</var>, <var>Receiver</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-proxy-object-internal-methods-and-internal-slots-set-p-v-receiver" title="[[Set]] ( P, V, Receiver )"><span class="secnum">10.5.9</span> <var class="field">[[Set]]</var> ( <var>P</var>, <var>V</var>, <var>Receiver</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-proxy-object-internal-methods-and-internal-slots-delete-p" title="[[Delete]] ( P )"><span class="secnum">10.5.10</span> <var class="field">[[Delete]]</var> ( <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-proxy-object-internal-methods-and-internal-slots-ownpropertykeys" title="[[OwnPropertyKeys]] ( )"><span class="secnum">10.5.11</span> <var class="field">[[OwnPropertyKeys]]</var> ( )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-proxy-object-internal-methods-and-internal-slots-call-thisargument-argumentslist" title="[[Call]] ( thisArgument, argumentsList )"><span class="secnum">10.5.12</span> <var class="field">[[Call]]</var> ( <var>thisArgument</var>, <var>argumentsList</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-proxy-object-internal-methods-and-internal-slots-construct-argumentslist-newtarget" title="[[Construct]] ( argumentsList, newTarget )"><span class="secnum">10.5.13</span> <var class="field">[[Construct]]</var> ( <var>argumentsList</var>, <var>newTarget</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-validatenonrevokedproxy" title="ValidateNonRevokedProxy ( proxy )"><span class="secnum">10.5.14</span> ValidateNonRevokedProxy ( <var>proxy</var> )</a></li><li><span class="item-toggle-none"></span><a href="ordinary-and-exotic-objects-behaviours.html#sec-proxycreate" title="ProxyCreate ( target, handler )"><span class="secnum">10.5.15</span> ProxyCreate ( <var>target</var>, <var>handler</var> )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-source-code.html#sec-ecmascript-language-source-code" title="ECMAScript Language: Source Text"><span class="secnum">11</span> ECMAScript Language: Source Text</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ecmascript-language-source-code.html#sec-source-text" title="Source Text"><span class="secnum">11.1</span> Source Text</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-source-code.html#sec-utf16encodecodepoint" title="Static Semantics: UTF16EncodeCodePoint ( cp )"><span class="secnum">11.1.1</span> SS: UTF16EncodeCodePoint ( <var>cp</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-source-code.html#sec-codepointstostring" title="Static Semantics: CodePointsToString ( text )"><span class="secnum">11.1.2</span> SS: CodePointsToString ( <var>text</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-source-code.html#sec-utf16decodesurrogatepair" title="Static Semantics: UTF16SurrogatePairToCodePoint ( lead, trail )"><span class="secnum">11.1.3</span> SS: UTF16SurrogatePairToCodePoint ( <var>lead</var>, <var>trail</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-source-code.html#sec-codepointat" title="Static Semantics: CodePointAt ( string, position )"><span class="secnum">11.1.4</span> SS: CodePointAt ( <var>string</var>, <var>position</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-source-code.html#sec-stringtocodepoints" title="Static Semantics: StringToCodePoints ( string )"><span class="secnum">11.1.5</span> SS: StringToCodePoints ( <var>string</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-source-code.html#sec-parsetext" title="Static Semantics: ParseText ( sourceText, goalSymbol )"><span class="secnum">11.1.6</span> SS: ParseText ( <var>sourceText</var>, <var>goalSymbol</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-source-code.html#sec-types-of-source-code" title="Types of Source Code"><span class="secnum">11.2</span> Types of Source Code</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-source-code.html#sec-directive-prologues-and-the-use-strict-directive" title="Directive Prologues and the Use Strict Directive"><span class="secnum">11.2.1</span> Directive Prologues and the Use Strict Directive</a></li><li><span class="item-toggle">+</span><a href="ecmascript-language-source-code.html#sec-strict-mode-code" title="Strict Mode Code"><span class="secnum">11.2.2</span> Strict Mode Code</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-source-code.html#sec-isstrict" title="Static Semantics: IsStrict ( node )"><span class="secnum">11.2.2.1</span> SS: IsStrict ( <var>node</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-source-code.html#sec-non-ecmascript-functions" title="Non-ECMAScript Functions"><span class="secnum">11.2.3</span> Non-ECMAScript Functions</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-lexical-grammar.html#sec-ecmascript-language-lexical-grammar" title="ECMAScript Language: Lexical Grammar"><span class="secnum">12</span> ECMAScript Language: Lexical Grammar</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-unicode-format-control-characters" title="Unicode Format-Control Characters"><span class="secnum">12.1</span> Unicode Format-Control Characters</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-white-space" title="White Space"><span class="secnum">12.2</span> White Space</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-line-terminators" title="Line Terminators"><span class="secnum">12.3</span> Line Terminators</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-comments" title="Comments"><span class="secnum">12.4</span> Comments</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-hashbang" title="Hashbang Comments"><span class="secnum">12.5</span> Hashbang Comments</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-tokens" title="Tokens"><span class="secnum">12.6</span> Tokens</a></li><li><span class="item-toggle">+</span><a href="ecmascript-language-lexical-grammar.html#sec-names-and-keywords" title="Names and Keywords"><span class="secnum">12.7</span> Names and Keywords</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ecmascript-language-lexical-grammar.html#sec-identifier-names" title="Identifier Names"><span class="secnum">12.7.1</span> Identifier Names</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-identifier-names-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">12.7.1.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-identifiercodepoints" title="Static Semantics: IdentifierCodePoints"><span class="secnum">12.7.1.2</span> SS: IdentifierCodePoints</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-identifiercodepoint" title="Static Semantics: IdentifierCodePoint"><span class="secnum">12.7.1.3</span> SS: IdentifierCodePoint</a></li></ol></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-keywords-and-reserved-words" title="Keywords and Reserved Words"><span class="secnum">12.7.2</span> Keywords and Reserved Words</a></li></ol></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-punctuators" title="Punctuators"><span class="secnum">12.8</span> Punctuators</a></li><li><span class="item-toggle">+</span><a href="ecmascript-language-lexical-grammar.html#sec-ecmascript-language-lexical-grammar-literals" title="Literals"><span class="secnum">12.9</span> Literals</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-null-literals" title="Null Literals"><span class="secnum">12.9.1</span> Null Literals</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-boolean-literals" title="Boolean Literals"><span class="secnum">12.9.2</span> Boolean Literals</a></li><li><span class="item-toggle">+</span><a href="ecmascript-language-lexical-grammar.html#sec-literals-numeric-literals" title="Numeric Literals"><span class="secnum">12.9.3</span> Numeric Literals</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-numeric-literals-early-errors" title="Static Semantics: Early Errors"><span class="secnum">12.9.3.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-static-semantics-mv" title="Static Semantics: MV"><span class="secnum">12.9.3.2</span> SS: MV</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-numericvalue" title="Static Semantics: NumericValue"><span class="secnum">12.9.3.3</span> SS: NumericValue</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-lexical-grammar.html#sec-literals-string-literals" title="String Literals"><span class="secnum">12.9.4</span> String Literals</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-string-literals-early-errors" title="Static Semantics: Early Errors"><span class="secnum">12.9.4.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-static-semantics-sv" title="Static Semantics: SV"><span class="secnum">12.9.4.2</span> SS: SV</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-string-literals-static-semantics-mv" title="Static Semantics: MV"><span class="secnum">12.9.4.3</span> SS: MV</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-lexical-grammar.html#sec-literals-regular-expression-literals" title="Regular Expression Literals"><span class="secnum">12.9.5</span> Regular Expression Literals</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-static-semantics-bodytext" title="Static Semantics: BodyText"><span class="secnum">12.9.5.1</span> SS: BodyText</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-static-semantics-flagtext" title="Static Semantics: FlagText"><span class="secnum">12.9.5.2</span> SS: FlagText</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-lexical-grammar.html#sec-template-literal-lexical-components" title="Template Literal Lexical Components"><span class="secnum">12.9.6</span> Template Literal Lexical Components</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-static-semantics-tv" title="Static Semantics: TV"><span class="secnum">12.9.6.1</span> SS: TV</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-static-semantics-trv" title="Static Semantics: TRV"><span class="secnum">12.9.6.2</span> SS: TRV</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-lexical-grammar.html#sec-automatic-semicolon-insertion" title="Automatic Semicolon Insertion"><span class="secnum">12.10</span> Automatic Semicolon Insertion</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-rules-of-automatic-semicolon-insertion" title="Rules of Automatic Semicolon Insertion"><span class="secnum">12.10.1</span> Rules of Automatic Semicolon Insertion</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-examples-of-automatic-semicolon-insertion" title="Examples of Automatic Semicolon Insertion"><span class="secnum">12.10.2</span> Examples of Automatic Semicolon Insertion</a></li><li><span class="item-toggle">+</span><a href="ecmascript-language-lexical-grammar.html#sec-interesting-cases-of-automatic-semicolon-insertion" title="Interesting Cases of Automatic Semicolon Insertion"><span class="secnum">12.10.3</span> Interesting Cases of Automatic Semicolon Insertion</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-asi-interesting-cases-in-statement-lists" title="Interesting Cases of Automatic Semicolon Insertion in Statement Lists"><span class="secnum">12.10.3.1</span> Interesting Cases of Automatic Semicolon Insertion in Statement Lists</a></li><li><span class="item-toggle">+</span><a href="ecmascript-language-lexical-grammar.html#sec-asi-cases-with-no-lineterminator-here" title="Cases of Automatic Semicolon Insertion and “[no LineTerminator here]”"><span class="secnum">12.10.3.2</span> Cases of Automatic Semicolon Insertion and “[no <emu-nt>LineTerminator</emu-nt> here]”</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-lexical-grammar.html#sec-no-lineterminator-here-automatic-semicolon-insertion-list" title="List of Grammar Productions with Optional Operands and “[no LineTerminator here]”"><span class="secnum">12.10.3.2.1</span> List of Grammar Productions with Optional Operands and “[no <emu-nt>LineTerminator</emu-nt> here]”</a></li></ol></li></ol></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-ecmascript-language-expressions" title="ECMAScript Language: Expressions"><span class="secnum">13</span> ECMAScript Language: Expressions</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-identifiers" title="Identifiers"><span class="secnum">13.1</span> Identifiers</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-identifiers-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">13.1.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-static-semantics-stringvalue" title="Static Semantics: StringValue"><span class="secnum">13.1.2</span> SS: StringValue</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-identifiers-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.1.3</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-primary-expression" title="Primary Expression"><span class="secnum">13.2</span> Primary Expression</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-this-keyword" title="The this Keyword"><span class="secnum">13.2.1</span> The <code>this</code> Keyword</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-this-keyword-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.2.1.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-identifier-reference" title="Identifier Reference"><span class="secnum">13.2.2</span> Identifier Reference</a></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-primary-expression-literals" title="Literals"><span class="secnum">13.2.3</span> Literals</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-literals-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.2.3.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-array-initializer" title="Array Initializer"><span class="secnum">13.2.4</span> Array Initializer</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-runtime-semantics-arrayaccumulation" title="Runtime Semantics: ArrayAccumulation"><span class="secnum">13.2.4.1</span> RS: ArrayAccumulation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-array-initializer-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.2.4.2</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-object-initializer" title="Object Initializer"><span class="secnum">13.2.5</span> Object Initializer</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-object-initializer-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">13.2.5.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-static-semantics-iscomputedpropertykey" title="Static Semantics: IsComputedPropertyKey"><span class="secnum">13.2.5.2</span> SS: IsComputedPropertyKey</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-static-semantics-propertynamelist" title="Static Semantics: PropertyNameList"><span class="secnum">13.2.5.3</span> SS: PropertyNameList</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-object-initializer-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.2.5.4</span> RS: Evaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-runtime-semantics-propertydefinitionevaluation" title="Runtime Semantics: PropertyDefinitionEvaluation"><span class="secnum">13.2.5.5</span> RS: PropertyDefinitionEvaluation</a></li></ol></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-function-defining-expressions" title="Function Defining Expressions"><span class="secnum">13.2.6</span> Function Defining Expressions</a></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-primary-expression-regular-expression-literals" title="Regular Expression Literals"><span class="secnum">13.2.7</span> Regular Expression Literals</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-primary-expression-regular-expression-literals-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">13.2.7.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-isvalidregularexpressionliteral" title="Static Semantics: IsValidRegularExpressionLiteral ( literal )"><span class="secnum">13.2.7.2</span> SS: IsValidRegularExpressionLiteral ( <var>literal</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-regular-expression-literals-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.2.7.3</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-template-literals" title="Template Literals"><span class="secnum">13.2.8</span> Template Literals</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-static-semantics-template-early-errors" title="Static Semantics: Early Errors"><span class="secnum">13.2.8.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-static-semantics-templatestrings" title="Static Semantics: TemplateStrings"><span class="secnum">13.2.8.2</span> SS: TemplateStrings</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-templatestring" title="Static Semantics: TemplateString ( templateToken, raw )"><span class="secnum">13.2.8.3</span> SS: TemplateString ( <var>templateToken</var>, <var>raw</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-gettemplateobject" title="GetTemplateObject ( templateLiteral )"><span class="secnum">13.2.8.4</span> GetTemplateObject ( <var>templateLiteral</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-runtime-semantics-substitutionevaluation" title="Runtime Semantics: SubstitutionEvaluation"><span class="secnum">13.2.8.5</span> RS: SubstitutionEvaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-template-literals-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.2.8.6</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-grouping-operator" title="The Grouping Operator"><span class="secnum">13.2.9</span> The Grouping Operator</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-grouping-operator-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">13.2.9.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-grouping-operator-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.2.9.2</span> RS: Evaluation</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-left-hand-side-expressions" title="Left-Hand-Side Expressions"><span class="secnum">13.3</span> Left-Hand-Side Expressions</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-static-semantics" title="Static Semantics"><span class="secnum">13.3.1</span> Static Semantics</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-left-hand-side-expressions-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">13.3.1.1</span> SS: Early Errors</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-property-accessors" title="Property Accessors"><span class="secnum">13.3.2</span> Property Accessors</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-property-accessors-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.3.2.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-evaluate-property-access-with-expression-key" title="EvaluatePropertyAccessWithExpressionKey ( baseValue, expression, strict )"><span class="secnum">13.3.3</span> EvaluatePropertyAccessWithExpressionKey ( <var>baseValue</var>, <var>expression</var>, <var>strict</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-evaluate-property-access-with-identifier-key" title="EvaluatePropertyAccessWithIdentifierKey ( baseValue, identifierName, strict )"><span class="secnum">13.3.4</span> EvaluatePropertyAccessWithIdentifierKey ( <var>baseValue</var>, <var>identifierName</var>, <var>strict</var> )</a></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-new-operator" title="The new Operator"><span class="secnum">13.3.5</span> The <code>new</code> Operator</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-new-operator-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.3.5.1</span> RS: Evaluation</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-evaluatenew" title="EvaluateNew ( constructExpr, arguments )"><span class="secnum">13.3.5.1.1</span> EvaluateNew ( <var>constructExpr</var>, <var>arguments</var> )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-function-calls" title="Function Calls"><span class="secnum">13.3.6</span> Function Calls</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-function-calls-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.3.6.1</span> RS: Evaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-evaluatecall" title="EvaluateCall ( func, ref, arguments, tailPosition )"><span class="secnum">13.3.6.2</span> EvaluateCall ( <var>func</var>, <var>ref</var>, <var>arguments</var>, <var>tailPosition</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-super-keyword" title="The super Keyword"><span class="secnum">13.3.7</span> The <code>super</code> Keyword</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-super-keyword-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.3.7.1</span> RS: Evaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-getsuperconstructor" title="GetSuperConstructor ( )"><span class="secnum">13.3.7.2</span> GetSuperConstructor ( )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-makesuperpropertyreference" title="MakeSuperPropertyReference ( actualThis, propertyKey, strict )"><span class="secnum">13.3.7.3</span> MakeSuperPropertyReference ( <var>actualThis</var>, <var>propertyKey</var>, <var>strict</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-argument-lists" title="Argument Lists"><span class="secnum">13.3.8</span> Argument Lists</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-runtime-semantics-argumentlistevaluation" title="Runtime Semantics: ArgumentListEvaluation"><span class="secnum">13.3.8.1</span> RS: ArgumentListEvaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-optional-chains" title="Optional Chains"><span class="secnum">13.3.9</span> Optional Chains</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-optional-chaining-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.3.9.1</span> RS: Evaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-optional-chaining-chain-evaluation" title="Runtime Semantics: ChainEvaluation"><span class="secnum">13.3.9.2</span> RS: ChainEvaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-import-calls" title="Import Calls"><span class="secnum">13.3.10</span> Import Calls</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-import-call-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.3.10.1</span> RS: Evaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-evaluate-import-call" title="EvaluateImportCall ( specifierExpression [ , optionsExpression ] )"><span class="secnum">13.3.10.2</span> EvaluateImportCall ( <var>specifierExpression</var> [ , <var>optionsExpression</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-ContinueDynamicImport" title="ContinueDynamicImport ( promiseCapability, moduleCompletion )"><span class="secnum">13.3.10.3</span> ContinueDynamicImport ( <var>promiseCapability</var>, <var>moduleCompletion</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-tagged-templates" title="Tagged Templates"><span class="secnum">13.3.11</span> Tagged Templates</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-tagged-templates-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.3.11.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-meta-properties" title="Meta Properties"><span class="secnum">13.3.12</span> Meta Properties</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-meta-properties-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.3.12.1</span> RS: Evaluation</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-hostgetimportmetaproperties" title="HostGetImportMetaProperties ( moduleRecord )"><span class="secnum">13.3.12.1.1</span> HostGetImportMetaProperties ( <var>moduleRecord</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-hostfinalizeimportmeta" title="HostFinalizeImportMeta ( importMeta, moduleRecord )"><span class="secnum">13.3.12.1.2</span> HostFinalizeImportMeta ( <var>importMeta</var>, <var>moduleRecord</var> )</a></li></ol></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-update-expressions" title="Update Expressions"><span class="secnum">13.4</span> Update Expressions</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-update-expressions-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">13.4.1</span> SS: Early Errors</a></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-postfix-increment-operator" title="Postfix Increment Operator"><span class="secnum">13.4.2</span> Postfix Increment Operator</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-postfix-increment-operator-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.4.2.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-postfix-decrement-operator" title="Postfix Decrement Operator"><span class="secnum">13.4.3</span> Postfix Decrement Operator</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-postfix-decrement-operator-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.4.3.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-prefix-increment-operator" title="Prefix Increment Operator"><span class="secnum">13.4.4</span> Prefix Increment Operator</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-prefix-increment-operator-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.4.4.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-prefix-decrement-operator" title="Prefix Decrement Operator"><span class="secnum">13.4.5</span> Prefix Decrement Operator</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-prefix-decrement-operator-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.4.5.1</span> RS: Evaluation</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-unary-operators" title="Unary Operators"><span class="secnum">13.5</span> Unary Operators</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-delete-operator" title="The delete Operator"><span class="secnum">13.5.1</span> The <code>delete</code> Operator</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-delete-operator-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">13.5.1.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-delete-operator-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.5.1.2</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-void-operator" title="The void Operator"><span class="secnum">13.5.2</span> The <code>void</code> Operator</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-void-operator-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.5.2.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-typeof-operator" title="The typeof Operator"><span class="secnum">13.5.3</span> The <code>typeof</code> Operator</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-typeof-operator-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.5.3.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-unary-plus-operator" title="Unary + Operator"><span class="secnum">13.5.4</span> Unary <code>+</code> Operator</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-unary-plus-operator-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.5.4.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-unary-minus-operator" title="Unary - Operator"><span class="secnum">13.5.5</span> Unary <code>-</code> Operator</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-unary-minus-operator-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.5.5.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-bitwise-not-operator" title="Bitwise NOT Operator ( ~ )"><span class="secnum">13.5.6</span> Bitwise NOT Operator ( <code>~</code> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-bitwise-not-operator-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.5.6.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-logical-not-operator" title="Logical NOT Operator ( ! )"><span class="secnum">13.5.7</span> Logical NOT Operator ( <code>!</code> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-logical-not-operator-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.5.7.1</span> RS: Evaluation</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-exp-operator" title="Exponentiation Operator"><span class="secnum">13.6</span> Exponentiation Operator</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-exp-operator-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.6.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-multiplicative-operators" title="Multiplicative Operators"><span class="secnum">13.7</span> Multiplicative Operators</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-multiplicative-operators-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.7.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-additive-operators" title="Additive Operators"><span class="secnum">13.8</span> Additive Operators</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-addition-operator-plus" title="The Addition Operator ( + )"><span class="secnum">13.8.1</span> The Addition Operator ( <code>+</code> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-addition-operator-plus-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.8.1.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-subtraction-operator-minus" title="The Subtraction Operator ( - )"><span class="secnum">13.8.2</span> The Subtraction Operator ( <code>-</code> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-subtraction-operator-minus-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.8.2.1</span> RS: Evaluation</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-bitwise-shift-operators" title="Bitwise Shift Operators"><span class="secnum">13.9</span> Bitwise Shift Operators</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-left-shift-operator" title="The Left Shift Operator ( << )"><span class="secnum">13.9.1</span> The Left Shift Operator ( <code><<</code> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-left-shift-operator-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.9.1.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-signed-right-shift-operator" title="The Signed Right Shift Operator ( >> )"><span class="secnum">13.9.2</span> The Signed Right Shift Operator ( <code>>></code> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-signed-right-shift-operator-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.9.2.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-unsigned-right-shift-operator" title="The Unsigned Right Shift Operator ( >>> )"><span class="secnum">13.9.3</span> The Unsigned Right Shift Operator ( <code>>>></code> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-unsigned-right-shift-operator-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.9.3.1</span> RS: Evaluation</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-relational-operators" title="Relational Operators"><span class="secnum">13.10</span> Relational Operators</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-relational-operators-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.10.1</span> RS: Evaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-instanceofoperator" title="InstanceofOperator ( V, target )"><span class="secnum">13.10.2</span> InstanceofOperator ( <var>V</var>, <var>target</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-equality-operators" title="Equality Operators"><span class="secnum">13.11</span> Equality Operators</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-equality-operators-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.11.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-binary-bitwise-operators" title="Binary Bitwise Operators"><span class="secnum">13.12</span> Binary Bitwise Operators</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-binary-bitwise-operators-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.12.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-binary-logical-operators" title="Binary Logical Operators"><span class="secnum">13.13</span> Binary Logical Operators</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-binary-logical-operators-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.13.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-conditional-operator" title="Conditional Operator ( ? : )"><span class="secnum">13.14</span> Conditional Operator ( <code>? :</code> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-conditional-operator-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.14.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-assignment-operators" title="Assignment Operators"><span class="secnum">13.15</span> Assignment Operators</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-assignment-operators-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">13.15.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-assignment-operators-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.15.2</span> RS: Evaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-applystringornumericbinaryoperator" title="ApplyStringOrNumericBinaryOperator ( lVal, opText, rVal )"><span class="secnum">13.15.3</span> ApplyStringOrNumericBinaryOperator ( <var>lVal</var>, <var>opText</var>, <var>rVal</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-evaluatestringornumericbinaryexpression" title="EvaluateStringOrNumericBinaryExpression ( leftOperand, opText, rightOperand )"><span class="secnum">13.15.4</span> EvaluateStringOrNumericBinaryExpression ( <var>leftOperand</var>, <var>opText</var>, <var>rightOperand</var> )</a></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-destructuring-assignment" title="Destructuring Assignment"><span class="secnum">13.15.5</span> Destructuring Assignment</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-destructuring-assignment-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">13.15.5.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-runtime-semantics-destructuringassignmentevaluation" title="Runtime Semantics: DestructuringAssignmentEvaluation"><span class="secnum">13.15.5.2</span> RS: DestructuringAssignmentEvaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-runtime-semantics-propertydestructuringassignmentevaluation" title="Runtime Semantics: PropertyDestructuringAssignmentEvaluation"><span class="secnum">13.15.5.3</span> RS: PropertyDestructuringAssignmentEvaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-runtime-semantics-restdestructuringassignmentevaluation" title="Runtime Semantics: RestDestructuringAssignmentEvaluation"><span class="secnum">13.15.5.4</span> RS: RestDestructuringAssignmentEvaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-runtime-semantics-iteratordestructuringassignmentevaluation" title="Runtime Semantics: IteratorDestructuringAssignmentEvaluation"><span class="secnum">13.15.5.5</span> RS: IteratorDestructuringAssignmentEvaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-runtime-semantics-keyeddestructuringassignmentevaluation" title="Runtime Semantics: KeyedDestructuringAssignmentEvaluation"><span class="secnum">13.15.5.6</span> RS: KeyedDestructuringAssignmentEvaluation</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-expressions.html#sec-comma-operator" title="Comma Operator ( , )"><span class="secnum">13.16</span> Comma Operator ( <code>,</code> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-expressions.html#sec-comma-operator-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">13.16.1</span> RS: Evaluation</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-ecmascript-language-statements-and-declarations" title="ECMAScript Language: Statements and Declarations"><span class="secnum">14</span> ECMAScript Language: Statements and Declarations</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-statement-semantics" title="Statement Semantics"><span class="secnum">14.1</span> Statement Semantics</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-statement-semantics-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">14.1.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-block" title="Block"><span class="secnum">14.2</span> Block</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-block-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">14.2.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-block-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">14.2.2</span> RS: Evaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-blockdeclarationinstantiation" title="BlockDeclarationInstantiation ( code, env )"><span class="secnum">14.2.3</span> BlockDeclarationInstantiation ( <var>code</var>, <var>env</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-declarations-and-the-variable-statement" title="Declarations and the Variable Statement"><span class="secnum">14.3</span> Declarations and the Variable Statement</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-let-and-const-declarations" title="Let and Const Declarations"><span class="secnum">14.3.1</span> Let and Const Declarations</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-let-and-const-declarations-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">14.3.1.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-let-and-const-declarations-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">14.3.1.2</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-variable-statement" title="Variable Statement"><span class="secnum">14.3.2</span> Variable Statement</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-variable-statement-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">14.3.2.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-destructuring-binding-patterns" title="Destructuring Binding Patterns"><span class="secnum">14.3.3</span> Destructuring Binding Patterns</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-destructuring-binding-patterns-runtime-semantics-propertybindinginitialization" title="Runtime Semantics: PropertyBindingInitialization"><span class="secnum">14.3.3.1</span> RS: PropertyBindingInitialization</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-destructuring-binding-patterns-runtime-semantics-restbindinginitialization" title="Runtime Semantics: RestBindingInitialization"><span class="secnum">14.3.3.2</span> RS: RestBindingInitialization</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-runtime-semantics-keyedbindinginitialization" title="Runtime Semantics: KeyedBindingInitialization"><span class="secnum">14.3.3.3</span> RS: KeyedBindingInitialization</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-empty-statement" title="Empty Statement"><span class="secnum">14.4</span> Empty Statement</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-empty-statement-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">14.4.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-expression-statement" title="Expression Statement"><span class="secnum">14.5</span> Expression Statement</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-expression-statement-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">14.5.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-if-statement" title="The if Statement"><span class="secnum">14.6</span> The <code>if</code> Statement</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-if-statement-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">14.6.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-if-statement-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">14.6.2</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-iteration-statements" title="Iteration Statements"><span class="secnum">14.7</span> Iteration Statements</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-iteration-statements-semantics" title="Semantics"><span class="secnum">14.7.1</span> Semantics</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-loopcontinues" title="LoopContinues ( completion, labelSet )"><span class="secnum">14.7.1.1</span> LoopContinues ( <var>completion</var>, <var>labelSet</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-runtime-semantics-loopevaluation" title="Runtime Semantics: LoopEvaluation"><span class="secnum">14.7.1.2</span> RS: LoopEvaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-do-while-statement" title="The do-while Statement"><span class="secnum">14.7.2</span> The <code>do</code>-<code>while</code> Statement</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-do-while-statement-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">14.7.2.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-runtime-semantics-dowhileloopevaluation" title="Runtime Semantics: DoWhileLoopEvaluation"><span class="secnum">14.7.2.2</span> RS: DoWhileLoopEvaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-while-statement" title="The while Statement"><span class="secnum">14.7.3</span> The <code>while</code> Statement</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-while-statement-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">14.7.3.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-runtime-semantics-whileloopevaluation" title="Runtime Semantics: WhileLoopEvaluation"><span class="secnum">14.7.3.2</span> RS: WhileLoopEvaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-for-statement" title="The for Statement"><span class="secnum">14.7.4</span> The <code>for</code> Statement</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-for-statement-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">14.7.4.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-runtime-semantics-forloopevaluation" title="Runtime Semantics: ForLoopEvaluation"><span class="secnum">14.7.4.2</span> RS: ForLoopEvaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-forbodyevaluation" title="ForBodyEvaluation ( test, increment, stmt, perIterationBindings, labelSet )"><span class="secnum">14.7.4.3</span> ForBodyEvaluation ( <var>test</var>, <var>increment</var>, <var>stmt</var>, <var>perIterationBindings</var>, <var>labelSet</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-createperiterationenvironment" title="CreatePerIterationEnvironment ( perIterationBindings )"><span class="secnum">14.7.4.4</span> CreatePerIterationEnvironment ( <var>perIterationBindings</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-for-in-and-for-of-statements" title="The for-in, for-of, and for-await-of Statements"><span class="secnum">14.7.5</span> The <code>for</code>-<code>in</code>, <code>for</code>-<code>of</code>, and <code>for</code>-<code>await</code>-<code>of</code> Statements</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-for-in-and-for-of-statements-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">14.7.5.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-static-semantics-isdestructuring" title="Static Semantics: IsDestructuring"><span class="secnum">14.7.5.2</span> SS: IsDestructuring</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-runtime-semantics-fordeclarationbindinginitialization" title="Runtime Semantics: ForDeclarationBindingInitialization"><span class="secnum">14.7.5.3</span> RS: ForDeclarationBindingInitialization</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-runtime-semantics-fordeclarationbindinginstantiation" title="Runtime Semantics: ForDeclarationBindingInstantiation"><span class="secnum">14.7.5.4</span> RS: ForDeclarationBindingInstantiation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-runtime-semantics-forinofloopevaluation" title="Runtime Semantics: ForInOfLoopEvaluation"><span class="secnum">14.7.5.5</span> RS: ForInOfLoopEvaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-runtime-semantics-forinofheadevaluation" title="ForIn/OfHeadEvaluation ( uninitializedBoundNames, expr, iterationKind )"><span class="secnum">14.7.5.6</span> ForIn/OfHeadEvaluation ( <var>uninitializedBoundNames</var>, <var>expr</var>, <var>iterationKind</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-runtime-semantics-forin-div-ofbodyevaluation-lhs-stmt-iterator-lhskind-labelset" title="ForIn/OfBodyEvaluation ( lhs, stmt, iteratorRecord, iterationKind, lhsKind, labelSet [ , iteratorKind ] )"><span class="secnum">14.7.5.7</span> ForIn/OfBodyEvaluation ( <var>lhs</var>, <var>stmt</var>, <var>iteratorRecord</var>, <var>iterationKind</var>, <var>lhsKind</var>, <var>labelSet</var> [ , <var>iteratorKind</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-for-in-and-for-of-statements-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">14.7.5.8</span> RS: Evaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-enumerate-object-properties" title="EnumerateObjectProperties ( O )"><span class="secnum">14.7.5.9</span> EnumerateObjectProperties ( <var>O</var> )</a></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-for-in-iterator-objects" title="For-In Iterator Objects"><span class="secnum">14.7.5.10</span> For-In Iterator Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-createforiniterator" title="CreateForInIterator ( object )"><span class="secnum">14.7.5.10.1</span> CreateForInIterator ( <var>object</var> )</a></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-%foriniteratorprototype%-object" title="The %ForInIteratorPrototype% Object"><span class="secnum">14.7.5.10.2</span> The %ForInIteratorPrototype% Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-%foriniteratorprototype%.next" title="%ForInIteratorPrototype%.next ( )"><span class="secnum">14.7.5.10.2.1</span> %ForInIteratorPrototype%.next ( )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-properties-of-for-in-iterator-instances" title="Properties of For-In Iterator Instances"><span class="secnum">14.7.5.10.3</span> Properties of For-In Iterator Instances</a></li></ol></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-continue-statement" title="The continue Statement"><span class="secnum">14.8</span> The <code>continue</code> Statement</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-continue-statement-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">14.8.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-continue-statement-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">14.8.2</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-break-statement" title="The break Statement"><span class="secnum">14.9</span> The <code>break</code> Statement</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-break-statement-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">14.9.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-break-statement-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">14.9.2</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-return-statement" title="The return Statement"><span class="secnum">14.10</span> The <code>return</code> Statement</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-return-statement-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">14.10.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-with-statement" title="The with Statement"><span class="secnum">14.11</span> The <code>with</code> Statement</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-with-statement-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">14.11.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-with-statement-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">14.11.2</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-switch-statement" title="The switch Statement"><span class="secnum">14.12</span> The <code>switch</code> Statement</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-switch-statement-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">14.12.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-runtime-semantics-caseblockevaluation" title="Runtime Semantics: CaseBlockEvaluation"><span class="secnum">14.12.2</span> RS: CaseBlockEvaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-runtime-semantics-caseclauseisselected" title="CaseClauseIsSelected ( C, input )"><span class="secnum">14.12.3</span> CaseClauseIsSelected ( <var>C</var>, <var>input</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-switch-statement-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">14.12.4</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-labelled-statements" title="Labelled Statements"><span class="secnum">14.13</span> Labelled Statements</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-labelled-statements-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">14.13.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-islabelledfunction" title="Static Semantics: IsLabelledFunction ( stmt )"><span class="secnum">14.13.2</span> SS: IsLabelledFunction ( <var>stmt</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-labelled-statements-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">14.13.3</span> RS: Evaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-runtime-semantics-labelledevaluation" title="Runtime Semantics: LabelledEvaluation"><span class="secnum">14.13.4</span> RS: LabelledEvaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-throw-statement" title="The throw Statement"><span class="secnum">14.14</span> The <code>throw</code> Statement</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-throw-statement-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">14.14.1</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-try-statement" title="The try Statement"><span class="secnum">14.15</span> The <code>try</code> Statement</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-try-statement-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">14.15.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-runtime-semantics-catchclauseevaluation" title="Runtime Semantics: CatchClauseEvaluation"><span class="secnum">14.15.2</span> RS: CatchClauseEvaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-try-statement-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">14.15.3</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-statements-and-declarations.html#sec-debugger-statement" title="The debugger Statement"><span class="secnum">14.16</span> The <code>debugger</code> Statement</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-statements-and-declarations.html#sec-debugger-statement-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">14.16.1</span> RS: Evaluation</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-functions-and-classes.html#sec-ecmascript-language-functions-and-classes" title="ECMAScript Language: Functions and Classes"><span class="secnum">15</span> ECMAScript Language: Functions and Classes</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ecmascript-language-functions-and-classes.html#sec-parameter-lists" title="Parameter Lists"><span class="secnum">15.1</span> Parameter Lists</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-parameter-lists-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">15.1.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-static-semantics-containsexpression" title="Static Semantics: ContainsExpression"><span class="secnum">15.1.2</span> SS: ContainsExpression</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-static-semantics-issimpleparameterlist" title="Static Semantics: IsSimpleParameterList"><span class="secnum">15.1.3</span> SS: IsSimpleParameterList</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-static-semantics-hasinitializer" title="Static Semantics: HasInitializer"><span class="secnum">15.1.4</span> SS: HasInitializer</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-static-semantics-expectedargumentcount" title="Static Semantics: ExpectedArgumentCount"><span class="secnum">15.1.5</span> SS: ExpectedArgumentCount</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-functions-and-classes.html#sec-function-definitions" title="Function Definitions"><span class="secnum">15.2</span> Function Definitions</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-function-definitions-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">15.2.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-static-semantics-functionbodycontainsusestrict" title="Static Semantics: FunctionBodyContainsUseStrict"><span class="secnum">15.2.2</span> SS: FunctionBodyContainsUseStrict</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-evaluatefunctionbody" title="Runtime Semantics: EvaluateFunctionBody"><span class="secnum">15.2.3</span> RS: EvaluateFunctionBody</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-instantiateordinaryfunctionobject" title="Runtime Semantics: InstantiateOrdinaryFunctionObject"><span class="secnum">15.2.4</span> RS: InstantiateOrdinaryFunctionObject</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-instantiateordinaryfunctionexpression" title="Runtime Semantics: InstantiateOrdinaryFunctionExpression"><span class="secnum">15.2.5</span> RS: InstantiateOrdinaryFunctionExpression</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-function-definitions-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">15.2.6</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-functions-and-classes.html#sec-arrow-function-definitions" title="Arrow Function Definitions"><span class="secnum">15.3</span> Arrow Function Definitions</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-arrow-function-definitions-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">15.3.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-static-semantics-concisebodycontainsusestrict" title="Static Semantics: ConciseBodyContainsUseStrict"><span class="secnum">15.3.2</span> SS: ConciseBodyContainsUseStrict</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-evaluateconcisebody" title="Runtime Semantics: EvaluateConciseBody"><span class="secnum">15.3.3</span> RS: EvaluateConciseBody</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-instantiatearrowfunctionexpression" title="Runtime Semantics: InstantiateArrowFunctionExpression"><span class="secnum">15.3.4</span> RS: InstantiateArrowFunctionExpression</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-arrow-function-definitions-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">15.3.5</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-functions-and-classes.html#sec-method-definitions" title="Method Definitions"><span class="secnum">15.4</span> Method Definitions</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-method-definitions-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">15.4.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-static-semantics-hasdirectsuper" title="Static Semantics: HasDirectSuper"><span class="secnum">15.4.2</span> SS: HasDirectSuper</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-static-semantics-specialmethod" title="Static Semantics: SpecialMethod"><span class="secnum">15.4.3</span> SS: SpecialMethod</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-definemethod" title="Runtime Semantics: DefineMethod"><span class="secnum">15.4.4</span> RS: DefineMethod</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-methoddefinitionevaluation" title="Runtime Semantics: MethodDefinitionEvaluation"><span class="secnum">15.4.5</span> RS: MethodDefinitionEvaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-functions-and-classes.html#sec-generator-function-definitions" title="Generator Function Definitions"><span class="secnum">15.5</span> Generator Function Definitions</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-generator-function-definitions-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">15.5.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-evaluategeneratorbody" title="Runtime Semantics: EvaluateGeneratorBody"><span class="secnum">15.5.2</span> RS: EvaluateGeneratorBody</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-instantiategeneratorfunctionobject" title="Runtime Semantics: InstantiateGeneratorFunctionObject"><span class="secnum">15.5.3</span> RS: InstantiateGeneratorFunctionObject</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-instantiategeneratorfunctionexpression" title="Runtime Semantics: InstantiateGeneratorFunctionExpression"><span class="secnum">15.5.4</span> RS: InstantiateGeneratorFunctionExpression</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-generator-function-definitions-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">15.5.5</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-functions-and-classes.html#sec-async-generator-function-definitions" title="Async Generator Function Definitions"><span class="secnum">15.6</span> Async Generator Function Definitions</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-async-generator-function-definitions-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">15.6.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-evaluateasyncgeneratorbody" title="Runtime Semantics: EvaluateAsyncGeneratorBody"><span class="secnum">15.6.2</span> RS: EvaluateAsyncGeneratorBody</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-instantiateasyncgeneratorfunctionobject" title="Runtime Semantics: InstantiateAsyncGeneratorFunctionObject"><span class="secnum">15.6.3</span> RS: InstantiateAsyncGeneratorFunctionObject</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-instantiateasyncgeneratorfunctionexpression" title="Runtime Semantics: InstantiateAsyncGeneratorFunctionExpression"><span class="secnum">15.6.4</span> RS: InstantiateAsyncGeneratorFunctionExpression</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-asyncgenerator-definitions-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">15.6.5</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-functions-and-classes.html#sec-class-definitions" title="Class Definitions"><span class="secnum">15.7</span> Class Definitions</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-class-definitions-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">15.7.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-static-semantics-classelementkind" title="Static Semantics: ClassElementKind"><span class="secnum">15.7.2</span> SS: ClassElementKind</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-static-semantics-constructormethod" title="Static Semantics: ConstructorMethod"><span class="secnum">15.7.3</span> SS: ConstructorMethod</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-static-semantics-isstatic" title="Static Semantics: IsStatic"><span class="secnum">15.7.4</span> SS: IsStatic</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-static-semantics-nonconstructorelements" title="Static Semantics: NonConstructorElements"><span class="secnum">15.7.5</span> SS: NonConstructorElements</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-static-semantics-prototypepropertynamelist" title="Static Semantics: PrototypePropertyNameList"><span class="secnum">15.7.6</span> SS: PrototypePropertyNameList</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-static-semantics-allprivateidentifiersvalid" title="Static Semantics: AllPrivateIdentifiersValid"><span class="secnum">15.7.7</span> SS: AllPrivateIdentifiersValid</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-static-semantics-privateboundidentifiers" title="Static Semantics: PrivateBoundIdentifiers"><span class="secnum">15.7.8</span> SS: PrivateBoundIdentifiers</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-static-semantics-containsarguments" title="Static Semantics: ContainsArguments"><span class="secnum">15.7.9</span> SS: ContainsArguments</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-classfielddefinitionevaluation" title="Runtime Semantics: ClassFieldDefinitionEvaluation"><span class="secnum">15.7.10</span> RS: ClassFieldDefinitionEvaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-classstaticblockdefinitionevaluation" title="Runtime Semantics: ClassStaticBlockDefinitionEvaluation"><span class="secnum">15.7.11</span> RS: ClassStaticBlockDefinitionEvaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-evaluateclassstaticblockbody" title="Runtime Semantics: EvaluateClassStaticBlockBody"><span class="secnum">15.7.12</span> RS: EvaluateClassStaticBlockBody</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-static-semantics-classelementevaluation" title="Runtime Semantics: ClassElementEvaluation"><span class="secnum">15.7.13</span> RS: ClassElementEvaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-classdefinitionevaluation" title="Runtime Semantics: ClassDefinitionEvaluation"><span class="secnum">15.7.14</span> RS: ClassDefinitionEvaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-bindingclassdeclarationevaluation" title="Runtime Semantics: BindingClassDeclarationEvaluation"><span class="secnum">15.7.15</span> RS: BindingClassDeclarationEvaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-class-definitions-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">15.7.16</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-functions-and-classes.html#sec-async-function-definitions" title="Async Function Definitions"><span class="secnum">15.8</span> Async Function Definitions</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-async-function-definitions-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">15.8.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-instantiateasyncfunctionobject" title="Runtime Semantics: InstantiateAsyncFunctionObject"><span class="secnum">15.8.2</span> RS: InstantiateAsyncFunctionObject</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-instantiateasyncfunctionexpression" title="Runtime Semantics: InstantiateAsyncFunctionExpression"><span class="secnum">15.8.3</span> RS: InstantiateAsyncFunctionExpression</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-evaluateasyncfunctionbody" title="Runtime Semantics: EvaluateAsyncFunctionBody"><span class="secnum">15.8.4</span> RS: EvaluateAsyncFunctionBody</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-async-function-definitions-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">15.8.5</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-functions-and-classes.html#sec-async-arrow-function-definitions" title="Async Arrow Function Definitions"><span class="secnum">15.9</span> Async Arrow Function Definitions</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-async-arrow-function-definitions-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">15.9.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-static-semantics-asyncconcisebodycontainsusestrict" title="Static Semantics: AsyncConciseBodyContainsUseStrict"><span class="secnum">15.9.2</span> SS: AsyncConciseBodyContainsUseStrict</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-evaluateasyncconcisebody" title="Runtime Semantics: EvaluateAsyncConciseBody"><span class="secnum">15.9.3</span> RS: EvaluateAsyncConciseBody</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-runtime-semantics-instantiateasyncarrowfunctionexpression" title="Runtime Semantics: InstantiateAsyncArrowFunctionExpression"><span class="secnum">15.9.4</span> RS: InstantiateAsyncArrowFunctionExpression</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-async-arrow-function-definitions-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">15.9.5</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-functions-and-classes.html#sec-tail-position-calls" title="Tail Position Calls"><span class="secnum">15.10</span> Tail Position Calls</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-isintailposition" title="Static Semantics: IsInTailPosition ( call )"><span class="secnum">15.10.1</span> SS: IsInTailPosition ( <var>call</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-static-semantics-hascallintailposition" title="Static Semantics: HasCallInTailPosition"><span class="secnum">15.10.2</span> SS: HasCallInTailPosition</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-functions-and-classes.html#sec-preparefortailcall" title="PrepareForTailCall ( )"><span class="secnum">15.10.3</span> PrepareForTailCall ( )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-scripts-and-modules.html#sec-ecmascript-language-scripts-and-modules" title="ECMAScript Language: Scripts and Modules"><span class="secnum">16</span> ECMAScript Language: Scripts and Modules</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ecmascript-language-scripts-and-modules.html#sec-scripts" title="Scripts"><span class="secnum">16.1</span> Scripts</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-scripts-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">16.1.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-scriptisstrict" title="Static Semantics: ScriptIsStrict"><span class="secnum">16.1.2</span> SS: ScriptIsStrict</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-script-semantics-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">16.1.3</span> RS: Evaluation</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-script-records" title="Script Records"><span class="secnum">16.1.4</span> Script Records</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-parse-script" title="ParseScript ( sourceText, realm, hostDefined )"><span class="secnum">16.1.5</span> ParseScript ( <var>sourceText</var>, <var>realm</var>, <var>hostDefined</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-runtime-semantics-scriptevaluation" title="ScriptEvaluation ( scriptRecord )"><span class="secnum">16.1.6</span> ScriptEvaluation ( <var>scriptRecord</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-globaldeclarationinstantiation" title="GlobalDeclarationInstantiation ( script, env )"><span class="secnum">16.1.7</span> GlobalDeclarationInstantiation ( <var>script</var>, <var>env</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-scripts-and-modules.html#sec-modules" title="Modules"><span class="secnum">16.2</span> Modules</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ecmascript-language-scripts-and-modules.html#sec-module-semantics" title="Module Semantics"><span class="secnum">16.2.1</span> Module Semantics</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-module-semantics-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">16.2.1.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-importedlocalnames" title="Static Semantics: ImportedLocalNames ( importEntries )"><span class="secnum">16.2.1.2</span> SS: ImportedLocalNames ( <var>importEntries</var> )</a></li><li><span class="item-toggle">+</span><a href="ecmascript-language-scripts-and-modules.html#sec-modulerequest-record" title="ModuleRequest Records"><span class="secnum">16.2.1.3</span> ModuleRequest Records</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-ModuleRequestsEqual" title="ModuleRequestsEqual ( left, right )"><span class="secnum">16.2.1.3.1</span> ModuleRequestsEqual ( <var>left</var>, <var>right</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-static-semantics-modulerequests" title="Static Semantics: ModuleRequests"><span class="secnum">16.2.1.4</span> SS: ModuleRequests</a></li><li><span class="item-toggle">+</span><a href="ecmascript-language-scripts-and-modules.html#sec-abstract-module-records" title="Abstract Module Records"><span class="secnum">16.2.1.5</span> Abstract Module Records</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-EvaluateModuleSync" title="EvaluateModuleSync ( module )"><span class="secnum">16.2.1.5.1</span> EvaluateModuleSync ( <var>module</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-scripts-and-modules.html#sec-cyclic-module-records" title="Cyclic Module Records"><span class="secnum">16.2.1.6</span> Cyclic Module Records</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ecmascript-language-scripts-and-modules.html#sec-cyclic-module-record-module-record-methods" title="Implementation of Module Record Abstract Methods"><span class="secnum">16.2.1.6.1</span> Implementation of Module Record Abstract Methods</a><ol class="toc"><li><span class="item-toggle">+</span><a href="ecmascript-language-scripts-and-modules.html#sec-LoadRequestedModules" title="LoadRequestedModules ( [ hostDefined ] )"><span class="secnum">16.2.1.6.1.1</span> LoadRequestedModules ( [ <var>hostDefined</var> ] )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-InnerModuleLoading" title="InnerModuleLoading ( state, module )"><span class="secnum">16.2.1.6.1.1.1</span> InnerModuleLoading ( <var>state</var>, <var>module</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-ContinueModuleLoading" title="ContinueModuleLoading ( state, moduleCompletion )"><span class="secnum">16.2.1.6.1.1.2</span> ContinueModuleLoading ( <var>state</var>, <var>moduleCompletion</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-scripts-and-modules.html#sec-moduledeclarationlinking" title="Link ( )"><span class="secnum">16.2.1.6.1.2</span> Link ( )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-InnerModuleLinking" title="InnerModuleLinking ( module, stack, index )"><span class="secnum">16.2.1.6.1.2.1</span> InnerModuleLinking ( <var>module</var>, <var>stack</var>, <var>index</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-scripts-and-modules.html#sec-moduleevaluation" title="Evaluate ( )"><span class="secnum">16.2.1.6.1.3</span> Evaluate ( )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-innermoduleevaluation" title="InnerModuleEvaluation ( module, stack, index )"><span class="secnum">16.2.1.6.1.3.1</span> InnerModuleEvaluation ( <var>module</var>, <var>stack</var>, <var>index</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-execute-async-module" title="ExecuteAsyncModule ( module )"><span class="secnum">16.2.1.6.1.3.2</span> ExecuteAsyncModule ( <var>module</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-gather-available-ancestors" title="GatherAvailableAncestors ( module, execList )"><span class="secnum">16.2.1.6.1.3.3</span> GatherAvailableAncestors ( <var>module</var>, <var>execList</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-async-module-execution-fulfilled" title="AsyncModuleExecutionFulfilled ( module )"><span class="secnum">16.2.1.6.1.3.4</span> AsyncModuleExecutionFulfilled ( <var>module</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-async-module-execution-rejected" title="AsyncModuleExecutionRejected ( module, error )"><span class="secnum">16.2.1.6.1.3.5</span> AsyncModuleExecutionRejected ( <var>module</var>, <var>error</var> )</a></li></ol></li></ol></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-example-cyclic-module-record-graphs" title="Example Cyclic Module Record Graphs"><span class="secnum">16.2.1.6.2</span> Example Cyclic Module Record Graphs</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-scripts-and-modules.html#sec-source-text-module-records" title="Source Text Module Records"><span class="secnum">16.2.1.7</span> Source Text Module Records</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-parsemodule" title="ParseModule ( sourceText, realm, hostDefined )"><span class="secnum">16.2.1.7.1</span> ParseModule ( <var>sourceText</var>, <var>realm</var>, <var>hostDefined</var> )</a></li><li><span class="item-toggle">+</span><a href="ecmascript-language-scripts-and-modules.html#sec-source-text-module-record-module-record-methods" title="Implementation of Module Record Abstract Methods"><span class="secnum">16.2.1.7.2</span> Implementation of Module Record Abstract Methods</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-getexportednames" title="GetExportedNames ( [ exportStarSet ] )"><span class="secnum">16.2.1.7.2.1</span> GetExportedNames ( [ <var>exportStarSet</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-resolveexport" title="ResolveExport ( exportName [ , resolveSet ] )"><span class="secnum">16.2.1.7.2.2</span> ResolveExport ( <var>exportName</var> [ , <var>resolveSet</var> ] )</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-scripts-and-modules.html#sec-source-text-module-record-cyclic-module-record-methods" title="Implementation of Cyclic Module Record Abstract Methods"><span class="secnum">16.2.1.7.3</span> Implementation of Cyclic Module Record Abstract Methods</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-source-text-module-record-initialize-environment" title="InitializeEnvironment ( )"><span class="secnum">16.2.1.7.3.1</span> InitializeEnvironment ( )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-source-text-module-record-execute-module" title="ExecuteModule ( [ capability ] )"><span class="secnum">16.2.1.7.3.2</span> ExecuteModule ( [ <var>capability</var> ] )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-scripts-and-modules.html#sec-synthetic-module-records" title="Synthetic Module Records"><span class="secnum">16.2.1.8</span> Synthetic Module Records</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-create-default-export-synthetic-module" title="CreateDefaultExportSyntheticModule ( defaultExport )"><span class="secnum">16.2.1.8.1</span> CreateDefaultExportSyntheticModule ( <var>defaultExport</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-parse-json-module" title="ParseJSONModule ( source )"><span class="secnum">16.2.1.8.2</span> ParseJSONModule ( <var>source</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-setsyntheticmoduleexport" title="SetSyntheticModuleExport ( module, exportName, exportValue )"><span class="secnum">16.2.1.8.3</span> SetSyntheticModuleExport ( <var>module</var>, <var>exportName</var>, <var>exportValue</var> )</a></li><li><span class="item-toggle">+</span><a href="ecmascript-language-scripts-and-modules.html#sec-smr-module-record-methods" title="Implementation of Module Record Abstract Methods"><span class="secnum">16.2.1.8.4</span> Implementation of Module Record Abstract Methods</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-smr-LoadRequestedModules" title="LoadRequestedModules ( [ hostDefined ] )"><span class="secnum">16.2.1.8.4.1</span> LoadRequestedModules ( [ <var>hostDefined</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-smr-getexportednames" title="GetExportedNames ( [ exportStarSet ] )"><span class="secnum">16.2.1.8.4.2</span> GetExportedNames ( [ <var>exportStarSet</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-smr-resolveexport" title="ResolveExport ( exportName [ , resolveSet ] )"><span class="secnum">16.2.1.8.4.3</span> ResolveExport ( <var>exportName</var> [ , <var>resolveSet</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-smr-Link" title="Link ( )"><span class="secnum">16.2.1.8.4.4</span> Link ( )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-smr-Evaluate" title="Evaluate ( )"><span class="secnum">16.2.1.8.4.5</span> Evaluate ( )</a></li></ol></li></ol></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-GetImportedModule" title="GetImportedModule ( referrer, request )"><span class="secnum">16.2.1.9</span> GetImportedModule ( <var>referrer</var>, <var>request</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-HostLoadImportedModule" title="HostLoadImportedModule ( referrer, moduleRequest, hostDefined, payload )"><span class="secnum">16.2.1.10</span> HostLoadImportedModule ( <var>referrer</var>, <var>moduleRequest</var>, <var>hostDefined</var>, <var>payload</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-FinishLoadingImportedModule" title="FinishLoadingImportedModule ( referrer, moduleRequest, payload, result )"><span class="secnum">16.2.1.11</span> FinishLoadingImportedModule ( <var>referrer</var>, <var>moduleRequest</var>, <var>payload</var>, <var>result</var> )</a></li><li><span class="item-toggle">+</span><a href="ecmascript-language-scripts-and-modules.html#sec-AllImportAttributesSupported" title="AllImportAttributesSupported ( attributes )"><span class="secnum">16.2.1.12</span> AllImportAttributesSupported ( <var>attributes</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-hostgetsupportedimportattributes" title="HostGetSupportedImportAttributes ( )"><span class="secnum">16.2.1.12.1</span> HostGetSupportedImportAttributes ( )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-getmodulenamespace" title="GetModuleNamespace ( module )"><span class="secnum">16.2.1.13</span> GetModuleNamespace ( <var>module</var> )</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-module-semantics-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">16.2.1.14</span> RS: Evaluation</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-scripts-and-modules.html#sec-imports" title="Imports"><span class="secnum">16.2.2</span> Imports</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-imports-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">16.2.2.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-static-semantics-importentries" title="Static Semantics: ImportEntries"><span class="secnum">16.2.2.2</span> SS: ImportEntries</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-static-semantics-importentriesformodule" title="Static Semantics: ImportEntriesForModule"><span class="secnum">16.2.2.3</span> SS: ImportEntriesForModule</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-withclausetoattributes" title="Static Semantics: WithClauseToAttributes"><span class="secnum">16.2.2.4</span> SS: WithClauseToAttributes</a></li></ol></li><li><span class="item-toggle">+</span><a href="ecmascript-language-scripts-and-modules.html#sec-exports" title="Exports"><span class="secnum">16.2.3</span> Exports</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-exports-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">16.2.3.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-static-semantics-exportedbindings" title="Static Semantics: ExportedBindings"><span class="secnum">16.2.3.2</span> SS: ExportedBindings</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-static-semantics-exportednames" title="Static Semantics: ExportedNames"><span class="secnum">16.2.3.3</span> SS: ExportedNames</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-static-semantics-exportentries" title="Static Semantics: ExportEntries"><span class="secnum">16.2.3.4</span> SS: ExportEntries</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-static-semantics-exportentriesformodule" title="Static Semantics: ExportEntriesForModule"><span class="secnum">16.2.3.5</span> SS: ExportEntriesForModule</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-static-semantics-referencedbindings" title="Static Semantics: ReferencedBindings"><span class="secnum">16.2.3.6</span> SS: ReferencedBindings</a></li><li><span class="item-toggle-none"></span><a href="ecmascript-language-scripts-and-modules.html#sec-exports-runtime-semantics-evaluation" title="Runtime Semantics: Evaluation"><span class="secnum">16.2.3.7</span> RS: Evaluation</a></li></ol></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="error-handling-and-language-extensions.html#sec-error-handling-and-language-extensions" title="Error Handling and Language Extensions"><span class="secnum">17</span> Error Handling and Language Extensions</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="error-handling-and-language-extensions.html#sec-forbidden-extensions" title="Forbidden Extensions"><span class="secnum">17.1</span> Forbidden Extensions</a></li></ol></li><li><span class="item-toggle-none"></span><a href="ecmascript-standard-built-in-objects.html#sec-ecmascript-standard-built-in-objects" title="ECMAScript Standard Built-in Objects"><span class="secnum">18</span> ECMAScript Standard Built-in Objects</a></li><li><span class="item-toggle">+</span><a href="global-object.html#sec-global-object" title="The Global Object"><span class="secnum">19</span> The Global Object</a><ol class="toc"><li><span class="item-toggle">+</span><a href="global-object.html#sec-value-properties-of-the-global-object" title="Value Properties of the Global Object"><span class="secnum">19.1</span> Value Properties of the Global Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="global-object.html#sec-globalthis" title="globalThis"><span class="secnum">19.1.1</span> globalThis</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-value-properties-of-the-global-object-infinity" title="Infinity"><span class="secnum">19.1.2</span> Infinity</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-value-properties-of-the-global-object-nan" title="NaN"><span class="secnum">19.1.3</span> NaN</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-undefined" title="undefined"><span class="secnum">19.1.4</span> undefined</a></li></ol></li><li><span class="item-toggle">+</span><a href="global-object.html#sec-function-properties-of-the-global-object" title="Function Properties of the Global Object"><span class="secnum">19.2</span> Function Properties of the Global Object</a><ol class="toc"><li><span class="item-toggle">+</span><a href="global-object.html#sec-eval-x" title="eval ( x )"><span class="secnum">19.2.1</span> eval ( <var>x</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="global-object.html#sec-performeval" title="PerformEval ( x, strictCaller, direct )"><span class="secnum">19.2.1.1</span> PerformEval ( <var>x</var>, <var>strictCaller</var>, <var>direct</var> )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-hostensurecancompilestrings" title="HostEnsureCanCompileStrings ( calleeRealm, parameterStrings, bodyString, direct )"><span class="secnum">19.2.1.2</span> HostEnsureCanCompileStrings ( <var>calleeRealm</var>, <var>parameterStrings</var>, <var>bodyString</var>, <var>direct</var> )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-evaldeclarationinstantiation" title="EvalDeclarationInstantiation ( body, varEnv, lexEnv, privateEnv, strict )"><span class="secnum">19.2.1.3</span> EvalDeclarationInstantiation ( <var>body</var>, <var>varEnv</var>, <var>lexEnv</var>, <var>privateEnv</var>, <var>strict</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-isfinite-number" title="isFinite ( number )"><span class="secnum">19.2.2</span> isFinite ( <var>number</var> )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-isnan-number" title="isNaN ( number )"><span class="secnum">19.2.3</span> isNaN ( <var>number</var> )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-parsefloat-string" title="parseFloat ( string )"><span class="secnum">19.2.4</span> parseFloat ( <var>string</var> )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-parseint-string-radix" title="parseInt ( string, radix )"><span class="secnum">19.2.5</span> parseInt ( <var>string</var>, <var>radix</var> )</a></li><li><span class="item-toggle">+</span><a href="global-object.html#sec-uri-handling-functions" title="URI Handling Functions"><span class="secnum">19.2.6</span> URI Handling Functions</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="global-object.html#sec-decodeuri-encodeduri" title="decodeURI ( encodedURI )"><span class="secnum">19.2.6.1</span> decodeURI ( <var>encodedURI</var> )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-decodeuricomponent-encodeduricomponent" title="decodeURIComponent ( encodedURIComponent )"><span class="secnum">19.2.6.2</span> decodeURIComponent ( <var>encodedURIComponent</var> )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-encodeuri-uri" title="encodeURI ( uri )"><span class="secnum">19.2.6.3</span> encodeURI ( <var>uri</var> )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-encodeuricomponent-uricomponent" title="encodeURIComponent ( uriComponent )"><span class="secnum">19.2.6.4</span> encodeURIComponent ( <var>uriComponent</var> )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-encode" title="Encode ( string, extraUnescaped )"><span class="secnum">19.2.6.5</span> Encode ( <var>string</var>, <var>extraUnescaped</var> )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-decode" title="Decode ( string, preserveEscapeSet )"><span class="secnum">19.2.6.6</span> Decode ( <var>string</var>, <var>preserveEscapeSet</var> )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-parsehexoctet" title="ParseHexOctet ( string, position )"><span class="secnum">19.2.6.7</span> ParseHexOctet ( <var>string</var>, <var>position</var> )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="global-object.html#sec-constructor-properties-of-the-global-object" title="Constructor Properties of the Global Object"><span class="secnum">19.3</span> Constructor Properties of the Global Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-aggregate-error" title="AggregateError ( . . . )"><span class="secnum">19.3.1</span> AggregateError ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-array" title="Array ( . . . )"><span class="secnum">19.3.2</span> Array ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-arraybuffer" title="ArrayBuffer ( . . . )"><span class="secnum">19.3.3</span> ArrayBuffer ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-bigint" title="BigInt ( . . . )"><span class="secnum">19.3.4</span> BigInt ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-bigint64array" title="BigInt64Array ( . . . )"><span class="secnum">19.3.5</span> BigInt64Array ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-biguint64array" title="BigUint64Array ( . . . )"><span class="secnum">19.3.6</span> BigUint64Array ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-boolean" title="Boolean ( . . . )"><span class="secnum">19.3.7</span> Boolean ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-dataview" title="DataView ( . . . )"><span class="secnum">19.3.8</span> DataView ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-date" title="Date ( . . . )"><span class="secnum">19.3.9</span> Date ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-error" title="Error ( . . . )"><span class="secnum">19.3.10</span> Error ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-evalerror" title="EvalError ( . . . )"><span class="secnum">19.3.11</span> EvalError ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-finalization-registry" title="FinalizationRegistry ( . . . )"><span class="secnum">19.3.12</span> FinalizationRegistry ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-float16array" title="Float16Array ( . . . )"><span class="secnum">19.3.13</span> Float16Array ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-float32array" title="Float32Array ( . . . )"><span class="secnum">19.3.14</span> Float32Array ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-float64array" title="Float64Array ( . . . )"><span class="secnum">19.3.15</span> Float64Array ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-function" title="Function ( . . . )"><span class="secnum">19.3.16</span> Function ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-int8array" title="Int8Array ( . . . )"><span class="secnum">19.3.17</span> Int8Array ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-int16array" title="Int16Array ( . . . )"><span class="secnum">19.3.18</span> Int16Array ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-int32array" title="Int32Array ( . . . )"><span class="secnum">19.3.19</span> Int32Array ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-iterator" title="Iterator ( . . . )"><span class="secnum">19.3.20</span> Iterator ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-map" title="Map ( . . . )"><span class="secnum">19.3.21</span> Map ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-number" title="Number ( . . . )"><span class="secnum">19.3.22</span> Number ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-object" title="Object ( . . . )"><span class="secnum">19.3.23</span> Object ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-promise" title="Promise ( . . . )"><span class="secnum">19.3.24</span> Promise ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-proxy" title="Proxy ( . . . )"><span class="secnum">19.3.25</span> Proxy ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-rangeerror" title="RangeError ( . . . )"><span class="secnum">19.3.26</span> RangeError ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-referenceerror" title="ReferenceError ( . . . )"><span class="secnum">19.3.27</span> ReferenceError ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-regexp" title="RegExp ( . . . )"><span class="secnum">19.3.28</span> RegExp ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-set" title="Set ( . . . )"><span class="secnum">19.3.29</span> Set ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-sharedarraybuffer" title="SharedArrayBuffer ( . . . )"><span class="secnum">19.3.30</span> SharedArrayBuffer ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-string" title="String ( . . . )"><span class="secnum">19.3.31</span> String ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-symbol" title="Symbol ( . . . )"><span class="secnum">19.3.32</span> Symbol ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-syntaxerror" title="SyntaxError ( . . . )"><span class="secnum">19.3.33</span> SyntaxError ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-typeerror" title="TypeError ( . . . )"><span class="secnum">19.3.34</span> TypeError ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-uint8array" title="Uint8Array ( . . . )"><span class="secnum">19.3.35</span> Uint8Array ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-uint8clampedarray" title="Uint8ClampedArray ( . . . )"><span class="secnum">19.3.36</span> Uint8ClampedArray ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-uint16array" title="Uint16Array ( . . . )"><span class="secnum">19.3.37</span> Uint16Array ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-uint32array" title="Uint32Array ( . . . )"><span class="secnum">19.3.38</span> Uint32Array ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-urierror" title="URIError ( . . . )"><span class="secnum">19.3.39</span> URIError ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-weakmap" title="WeakMap ( . . . )"><span class="secnum">19.3.40</span> WeakMap ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-weakref" title="WeakRef ( . . . )"><span class="secnum">19.3.41</span> WeakRef ( . . . )</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-constructor-properties-of-the-global-object-weakset" title="WeakSet ( . . . )"><span class="secnum">19.3.42</span> WeakSet ( . . . )</a></li></ol></li><li><span class="item-toggle">+</span><a href="global-object.html#sec-other-properties-of-the-global-object" title="Other Properties of the Global Object"><span class="secnum">19.4</span> Other Properties of the Global Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="global-object.html#sec-atomics" title="Atomics"><span class="secnum">19.4.1</span> Atomics</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-json" title="JSON"><span class="secnum">19.4.2</span> JSON</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-math" title="Math"><span class="secnum">19.4.3</span> Math</a></li><li><span class="item-toggle-none"></span><a href="global-object.html#sec-reflect" title="Reflect"><span class="secnum">19.4.4</span> Reflect</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-fundamental-objects" title="Fundamental Objects"><span class="secnum">20</span> Fundamental Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-object-objects" title="Object Objects"><span class="secnum">20.1</span> Object Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-object-constructor" title="The Object Constructor"><span class="secnum">20.1.1</span> The Object Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object-value" title="Object ( value )"><span class="secnum">20.1.1.1</span> Object ( <var>value</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-properties-of-the-object-constructor" title="Properties of the Object Constructor"><span class="secnum">20.1.2</span> Properties of the Object Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.assign" title="Object.assign ( target, ...sources )"><span class="secnum">20.1.2.1</span> Object.assign ( <var>target</var>, ...<var>sources</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.create" title="Object.create ( O, Properties )"><span class="secnum">20.1.2.2</span> Object.create ( <var>O</var>, <var>Properties</var> )</a></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-object.defineproperties" title="Object.defineProperties ( O, Properties )"><span class="secnum">20.1.2.3</span> Object.defineProperties ( <var>O</var>, <var>Properties</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-objectdefineproperties" title="ObjectDefineProperties ( O, Properties )"><span class="secnum">20.1.2.3.1</span> ObjectDefineProperties ( <var>O</var>, <var>Properties</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.defineproperty" title="Object.defineProperty ( O, P, Attributes )"><span class="secnum">20.1.2.4</span> Object.defineProperty ( <var>O</var>, <var>P</var>, <var>Attributes</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.entries" title="Object.entries ( O )"><span class="secnum">20.1.2.5</span> Object.entries ( <var>O</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.freeze" title="Object.freeze ( O )"><span class="secnum">20.1.2.6</span> Object.freeze ( <var>O</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.fromentries" title="Object.fromEntries ( iterable )"><span class="secnum">20.1.2.7</span> Object.fromEntries ( <var>iterable</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.getownpropertydescriptor" title="Object.getOwnPropertyDescriptor ( O, P )"><span class="secnum">20.1.2.8</span> Object.getOwnPropertyDescriptor ( <var>O</var>, <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.getownpropertydescriptors" title="Object.getOwnPropertyDescriptors ( O )"><span class="secnum">20.1.2.9</span> Object.getOwnPropertyDescriptors ( <var>O</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.getownpropertynames" title="Object.getOwnPropertyNames ( O )"><span class="secnum">20.1.2.10</span> Object.getOwnPropertyNames ( <var>O</var> )</a></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-object.getownpropertysymbols" title="Object.getOwnPropertySymbols ( O )"><span class="secnum">20.1.2.11</span> Object.getOwnPropertySymbols ( <var>O</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-getownpropertykeys" title="GetOwnPropertyKeys ( O, type )"><span class="secnum">20.1.2.11.1</span> GetOwnPropertyKeys ( <var>O</var>, <var>type</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.getprototypeof" title="Object.getPrototypeOf ( O )"><span class="secnum">20.1.2.12</span> Object.getPrototypeOf ( <var>O</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.groupby" title="Object.groupBy ( items, callback )"><span class="secnum">20.1.2.13</span> Object.groupBy ( <var>items</var>, <var>callback</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.hasown" title="Object.hasOwn ( O, P )"><span class="secnum">20.1.2.14</span> Object.hasOwn ( <var>O</var>, <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.is" title="Object.is ( value1, value2 )"><span class="secnum">20.1.2.15</span> Object.is ( <var>value1</var>, <var>value2</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.isextensible" title="Object.isExtensible ( O )"><span class="secnum">20.1.2.16</span> Object.isExtensible ( <var>O</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.isfrozen" title="Object.isFrozen ( O )"><span class="secnum">20.1.2.17</span> Object.isFrozen ( <var>O</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.issealed" title="Object.isSealed ( O )"><span class="secnum">20.1.2.18</span> Object.isSealed ( <var>O</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.keys" title="Object.keys ( O )"><span class="secnum">20.1.2.19</span> Object.keys ( <var>O</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.preventextensions" title="Object.preventExtensions ( O )"><span class="secnum">20.1.2.20</span> Object.preventExtensions ( <var>O</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.prototype" title="Object.prototype"><span class="secnum">20.1.2.21</span> Object.prototype</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.seal" title="Object.seal ( O )"><span class="secnum">20.1.2.22</span> Object.seal ( <var>O</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.setprototypeof" title="Object.setPrototypeOf ( O, proto )"><span class="secnum">20.1.2.23</span> Object.setPrototypeOf ( <var>O</var>, <var>proto</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.values" title="Object.values ( O )"><span class="secnum">20.1.2.24</span> Object.values ( <var>O</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-properties-of-the-object-prototype-object" title="Properties of the Object Prototype Object"><span class="secnum">20.1.3</span> Properties of the Object Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.prototype.constructor" title="Object.prototype.constructor"><span class="secnum">20.1.3.1</span> Object.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.prototype.hasownproperty" title="Object.prototype.hasOwnProperty ( V )"><span class="secnum">20.1.3.2</span> Object.prototype.hasOwnProperty ( <var>V</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.prototype.isprototypeof" title="Object.prototype.isPrototypeOf ( V )"><span class="secnum">20.1.3.3</span> Object.prototype.isPrototypeOf ( <var>V</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.prototype.propertyisenumerable" title="Object.prototype.propertyIsEnumerable ( V )"><span class="secnum">20.1.3.4</span> Object.prototype.propertyIsEnumerable ( <var>V</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.prototype.tolocalestring" title="Object.prototype.toLocaleString ( [ reserved1 [ , reserved2 ] ] )"><span class="secnum">20.1.3.5</span> Object.prototype.toLocaleString ( [ <var>reserved1</var> [ , <var>reserved2</var> ] ] )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.prototype.tostring" title="Object.prototype.toString ( )"><span class="secnum">20.1.3.6</span> Object.prototype.toString ( )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.prototype.valueof" title="Object.prototype.valueOf ( )"><span class="secnum">20.1.3.7</span> Object.prototype.valueOf ( )</a></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-object.prototype.__proto__" title="Object.prototype.__proto__"><span class="secnum">20.1.3.8</span> Object.prototype.__proto__</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-get-object.prototype.__proto__" title="get Object.prototype.__proto__"><span class="secnum">20.1.3.8.1</span> get Object.prototype.__proto__</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-set-object.prototype.__proto__" title="set Object.prototype.__proto__"><span class="secnum">20.1.3.8.2</span> set Object.prototype.__proto__</a></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-object.prototype-legacy-accessor-methods" title="Legacy Object.prototype Accessor Methods"><span class="secnum">20.1.3.9</span> Legacy Object.prototype Accessor Methods</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.prototype.__defineGetter__" title="Object.prototype.__defineGetter__ ( P, getter )"><span class="secnum">20.1.3.9.1</span> Object.prototype.__defineGetter__ ( <var>P</var>, <var>getter</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.prototype.__defineSetter__" title="Object.prototype.__defineSetter__ ( P, setter )"><span class="secnum">20.1.3.9.2</span> Object.prototype.__defineSetter__ ( <var>P</var>, <var>setter</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.prototype.__lookupGetter__" title="Object.prototype.__lookupGetter__ ( P )"><span class="secnum">20.1.3.9.3</span> Object.prototype.__lookupGetter__ ( <var>P</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-object.prototype.__lookupSetter__" title="Object.prototype.__lookupSetter__ ( P )"><span class="secnum">20.1.3.9.4</span> Object.prototype.__lookupSetter__ ( <var>P</var> )</a></li></ol></li></ol></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-properties-of-object-instances" title="Properties of Object Instances"><span class="secnum">20.1.4</span> Properties of Object Instances</a></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-function-objects" title="Function Objects"><span class="secnum">20.2</span> Function Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-function-constructor" title="The Function Constructor"><span class="secnum">20.2.1</span> The Function Constructor</a><ol class="toc"><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-function-p1-p2-pn-body" title="Function ( ...parameterArgs, bodyArg )"><span class="secnum">20.2.1.1</span> Function ( ...<var>parameterArgs</var>, <var>bodyArg</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-createdynamicfunction" title="CreateDynamicFunction ( constructor, newTarget, kind, parameterArgs, bodyArg )"><span class="secnum">20.2.1.1.1</span> CreateDynamicFunction ( <var>constructor</var>, <var>newTarget</var>, <var>kind</var>, <var>parameterArgs</var>, <var>bodyArg</var> )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-properties-of-the-function-constructor" title="Properties of the Function Constructor"><span class="secnum">20.2.2</span> Properties of the Function Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-function.prototype" title="Function.prototype"><span class="secnum">20.2.2.1</span> Function.prototype</a></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-properties-of-the-function-prototype-object" title="Properties of the Function Prototype Object"><span class="secnum">20.2.3</span> Properties of the Function Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-function.prototype.apply" title="Function.prototype.apply ( thisArg, argArray )"><span class="secnum">20.2.3.1</span> Function.prototype.apply ( <var>thisArg</var>, <var>argArray</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-function.prototype.bind" title="Function.prototype.bind ( thisArg, ...args )"><span class="secnum">20.2.3.2</span> Function.prototype.bind ( <var>thisArg</var>, ...<var>args</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-function.prototype.call" title="Function.prototype.call ( thisArg, ...args )"><span class="secnum">20.2.3.3</span> Function.prototype.call ( <var>thisArg</var>, ...<var>args</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-function.prototype.constructor" title="Function.prototype.constructor"><span class="secnum">20.2.3.4</span> Function.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-function.prototype.tostring" title="Function.prototype.toString ( )"><span class="secnum">20.2.3.5</span> Function.prototype.toString ( )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-function.prototype-%symbol.hasinstance%" title="Function.prototype [ %Symbol.hasInstance% ] ( V )"><span class="secnum">20.2.3.6</span> Function.prototype [ %Symbol.hasInstance% ] ( <var>V</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-function-instances" title="Function Instances"><span class="secnum">20.2.4</span> Function Instances</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-function-instances-length" title="length"><span class="secnum">20.2.4.1</span> length</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-function-instances-name" title="name"><span class="secnum">20.2.4.2</span> name</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-function-instances-prototype" title="prototype"><span class="secnum">20.2.4.3</span> prototype</a></li></ol></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-hosthassourcetextavailable" title="HostHasSourceTextAvailable ( func )"><span class="secnum">20.2.5</span> HostHasSourceTextAvailable ( <var>func</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-boolean-objects" title="Boolean Objects"><span class="secnum">20.3</span> Boolean Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-boolean-constructor" title="The Boolean Constructor"><span class="secnum">20.3.1</span> The Boolean Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-boolean-constructor-boolean-value" title="Boolean ( value )"><span class="secnum">20.3.1.1</span> Boolean ( <var>value</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-properties-of-the-boolean-constructor" title="Properties of the Boolean Constructor"><span class="secnum">20.3.2</span> Properties of the Boolean Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-boolean.prototype" title="Boolean.prototype"><span class="secnum">20.3.2.1</span> Boolean.prototype</a></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-properties-of-the-boolean-prototype-object" title="Properties of the Boolean Prototype Object"><span class="secnum">20.3.3</span> Properties of the Boolean Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-boolean.prototype.constructor" title="Boolean.prototype.constructor"><span class="secnum">20.3.3.1</span> Boolean.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-boolean.prototype.tostring" title="Boolean.prototype.toString ( )"><span class="secnum">20.3.3.2</span> Boolean.prototype.toString ( )</a></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-boolean.prototype.valueof" title="Boolean.prototype.valueOf ( )"><span class="secnum">20.3.3.3</span> Boolean.prototype.valueOf ( )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-thisbooleanvalue" title="ThisBooleanValue ( value )"><span class="secnum">20.3.3.3.1</span> ThisBooleanValue ( <var>value</var> )</a></li></ol></li></ol></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-properties-of-boolean-instances" title="Properties of Boolean Instances"><span class="secnum">20.3.4</span> Properties of Boolean Instances</a></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-symbol-objects" title="Symbol Objects"><span class="secnum">20.4</span> Symbol Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-symbol-constructor" title="The Symbol Constructor"><span class="secnum">20.4.1</span> The Symbol Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-symbol-description" title="Symbol ( [ description ] )"><span class="secnum">20.4.1.1</span> Symbol ( [ <var>description</var> ] )</a></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-properties-of-the-symbol-constructor" title="Properties of the Symbol Constructor"><span class="secnum">20.4.2</span> Properties of the Symbol Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-symbol.asynciterator" title="Symbol.asyncIterator"><span class="secnum">20.4.2.1</span> Symbol.asyncIterator</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-symbol.for" title="Symbol.for ( key )"><span class="secnum">20.4.2.2</span> Symbol.for ( <var>key</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-symbol.hasinstance" title="Symbol.hasInstance"><span class="secnum">20.4.2.3</span> Symbol.hasInstance</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-symbol.isconcatspreadable" title="Symbol.isConcatSpreadable"><span class="secnum">20.4.2.4</span> Symbol.isConcatSpreadable</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-symbol.iterator" title="Symbol.iterator"><span class="secnum">20.4.2.5</span> Symbol.iterator</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-symbol.keyfor" title="Symbol.keyFor ( sym )"><span class="secnum">20.4.2.6</span> Symbol.keyFor ( <var>sym</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-symbol.match" title="Symbol.match"><span class="secnum">20.4.2.7</span> Symbol.match</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-symbol.matchall" title="Symbol.matchAll"><span class="secnum">20.4.2.8</span> Symbol.matchAll</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-symbol.prototype" title="Symbol.prototype"><span class="secnum">20.4.2.9</span> Symbol.prototype</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-symbol.replace" title="Symbol.replace"><span class="secnum">20.4.2.10</span> Symbol.replace</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-symbol.search" title="Symbol.search"><span class="secnum">20.4.2.11</span> Symbol.search</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-symbol.species" title="Symbol.species"><span class="secnum">20.4.2.12</span> Symbol.species</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-symbol.split" title="Symbol.split"><span class="secnum">20.4.2.13</span> Symbol.split</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-symbol.toprimitive" title="Symbol.toPrimitive"><span class="secnum">20.4.2.14</span> Symbol.toPrimitive</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-symbol.tostringtag" title="Symbol.toStringTag"><span class="secnum">20.4.2.15</span> Symbol.toStringTag</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-symbol.unscopables" title="Symbol.unscopables"><span class="secnum">20.4.2.16</span> Symbol.unscopables</a></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-properties-of-the-symbol-prototype-object" title="Properties of the Symbol Prototype Object"><span class="secnum">20.4.3</span> Properties of the Symbol Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-symbol.prototype.constructor" title="Symbol.prototype.constructor"><span class="secnum">20.4.3.1</span> Symbol.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-symbol.prototype.description" title="get Symbol.prototype.description"><span class="secnum">20.4.3.2</span> get Symbol.prototype.description</a></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-symbol.prototype.tostring" title="Symbol.prototype.toString ( )"><span class="secnum">20.4.3.3</span> Symbol.prototype.toString ( )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-symboldescriptivestring" title="SymbolDescriptiveString ( sym )"><span class="secnum">20.4.3.3.1</span> SymbolDescriptiveString ( <var>sym</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-symbol.prototype.valueof" title="Symbol.prototype.valueOf ( )"><span class="secnum">20.4.3.4</span> Symbol.prototype.valueOf ( )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-thissymbolvalue" title="ThisSymbolValue ( value )"><span class="secnum">20.4.3.4.1</span> ThisSymbolValue ( <var>value</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-symbol.prototype-%symbol.toprimitive%" title="Symbol.prototype [ %Symbol.toPrimitive% ] ( hint )"><span class="secnum">20.4.3.5</span> Symbol.prototype [ %Symbol.toPrimitive% ] ( <var>hint</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-symbol.prototype-%symbol.tostringtag%" title="Symbol.prototype [ %Symbol.toStringTag% ]"><span class="secnum">20.4.3.6</span> Symbol.prototype [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-properties-of-symbol-instances" title="Properties of Symbol Instances"><span class="secnum">20.4.4</span> Properties of Symbol Instances</a></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-abstract-operations-for-symbols" title="Abstract Operations for Symbols"><span class="secnum">20.4.5</span> Abstract Operations for Symbols</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-keyforsymbol" title="KeyForSymbol ( sym )"><span class="secnum">20.4.5.1</span> KeyForSymbol ( <var>sym</var> )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-error-objects" title="Error Objects"><span class="secnum">20.5</span> Error Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-error-constructor" title="The Error Constructor"><span class="secnum">20.5.1</span> The Error Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-error-message" title="Error ( message [ , options ] )"><span class="secnum">20.5.1.1</span> Error ( <var>message</var> [ , <var>options</var> ] )</a></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-properties-of-the-error-constructor" title="Properties of the Error Constructor"><span class="secnum">20.5.2</span> Properties of the Error Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-error.iserror" title="Error.isError ( arg )"><span class="secnum">20.5.2.1</span> Error.isError ( <var>arg</var> )</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-error.prototype" title="Error.prototype"><span class="secnum">20.5.2.2</span> Error.prototype</a></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-properties-of-the-error-prototype-object" title="Properties of the Error Prototype Object"><span class="secnum">20.5.3</span> Properties of the Error Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-error.prototype.constructor" title="Error.prototype.constructor"><span class="secnum">20.5.3.1</span> Error.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-error.prototype.message" title="Error.prototype.message"><span class="secnum">20.5.3.2</span> Error.prototype.message</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-error.prototype.name" title="Error.prototype.name"><span class="secnum">20.5.3.3</span> Error.prototype.name</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-error.prototype.tostring" title="Error.prototype.toString ( )"><span class="secnum">20.5.3.4</span> Error.prototype.toString ( )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-properties-of-error-instances" title="Properties of Error Instances"><span class="secnum">20.5.4</span> Properties of Error Instances</a></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-native-error-types-used-in-this-standard" title="Native Error Types Used in This Standard"><span class="secnum">20.5.5</span> Native Error Types Used in This Standard</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-native-error-types-used-in-this-standard-evalerror" title="EvalError"><span class="secnum">20.5.5.1</span> EvalError</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-native-error-types-used-in-this-standard-rangeerror" title="RangeError"><span class="secnum">20.5.5.2</span> RangeError</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-native-error-types-used-in-this-standard-referenceerror" title="ReferenceError"><span class="secnum">20.5.5.3</span> ReferenceError</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-native-error-types-used-in-this-standard-syntaxerror" title="SyntaxError"><span class="secnum">20.5.5.4</span> SyntaxError</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-native-error-types-used-in-this-standard-typeerror" title="TypeError"><span class="secnum">20.5.5.5</span> TypeError</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-native-error-types-used-in-this-standard-urierror" title="URIError"><span class="secnum">20.5.5.6</span> URIError</a></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-nativeerror-object-structure" title="NativeError Object Structure"><span class="secnum">20.5.6</span> <var>NativeError</var> Object Structure</a><ol class="toc"><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-nativeerror-constructors" title="The NativeError Constructors"><span class="secnum">20.5.6.1</span> The <var>NativeError</var> Constructors</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-nativeerror" title="NativeError ( message [ , options ] )"><span class="secnum">20.5.6.1.1</span> <var>NativeError</var> ( <var>message</var> [ , <var>options</var> ] )</a></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-properties-of-the-nativeerror-constructors" title="Properties of the NativeError Constructors"><span class="secnum">20.5.6.2</span> Properties of the <var>NativeError</var> Constructors</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-nativeerror.prototype" title="NativeError.prototype"><span class="secnum">20.5.6.2.1</span> <var>NativeError</var>.prototype</a></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-properties-of-the-nativeerror-prototype-objects" title="Properties of the NativeError Prototype Objects"><span class="secnum">20.5.6.3</span> Properties of the <var>NativeError</var> Prototype Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-nativeerror.prototype.constructor" title="NativeError.prototype.constructor"><span class="secnum">20.5.6.3.1</span> <var>NativeError</var>.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-nativeerror.prototype.message" title="NativeError.prototype.message"><span class="secnum">20.5.6.3.2</span> <var>NativeError</var>.prototype.message</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-nativeerror.prototype.name" title="NativeError.prototype.name"><span class="secnum">20.5.6.3.3</span> <var>NativeError</var>.prototype.name</a></li></ol></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-properties-of-nativeerror-instances" title="Properties of NativeError Instances"><span class="secnum">20.5.6.4</span> Properties of <var>NativeError</var> Instances</a></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-aggregate-error-objects" title="AggregateError Objects"><span class="secnum">20.5.7</span> AggregateError Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-aggregate-error-constructor" title="The AggregateError Constructor"><span class="secnum">20.5.7.1</span> The AggregateError Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-aggregate-error" title="AggregateError ( errors, message [ , options ] )"><span class="secnum">20.5.7.1.1</span> AggregateError ( <var>errors</var>, <var>message</var> [ , <var>options</var> ] )</a></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-properties-of-the-aggregate-error-constructors" title="Properties of the AggregateError Constructor"><span class="secnum">20.5.7.2</span> Properties of the AggregateError Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-aggregate-error.prototype" title="AggregateError.prototype"><span class="secnum">20.5.7.2.1</span> AggregateError.prototype</a></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-properties-of-the-aggregate-error-prototype-objects" title="Properties of the AggregateError Prototype Object"><span class="secnum">20.5.7.3</span> Properties of the AggregateError Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-aggregate-error.prototype.constructor" title="AggregateError.prototype.constructor"><span class="secnum">20.5.7.3.1</span> AggregateError.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-aggregate-error.prototype.message" title="AggregateError.prototype.message"><span class="secnum">20.5.7.3.2</span> AggregateError.prototype.message</a></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-aggregate-error.prototype.name" title="AggregateError.prototype.name"><span class="secnum">20.5.7.3.3</span> AggregateError.prototype.name</a></li></ol></li><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-properties-of-aggregate-error-instances" title="Properties of AggregateError Instances"><span class="secnum">20.5.7.4</span> Properties of AggregateError Instances</a></li></ol></li><li><span class="item-toggle">+</span><a href="fundamental-objects.html#sec-abstract-operations-for-error-objects" title="Abstract Operations for Error Objects"><span class="secnum">20.5.8</span> Abstract Operations for Error Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="fundamental-objects.html#sec-installerrorcause" title="InstallErrorCause ( O, options )"><span class="secnum">20.5.8.1</span> InstallErrorCause ( <var>O</var>, <var>options</var> )</a></li></ol></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-numbers-and-dates" title="Numbers and Dates"><span class="secnum">21</span> Numbers and Dates</a><ol class="toc"><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-number-objects" title="Number Objects"><span class="secnum">21.1</span> Number Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-number-constructor" title="The Number Constructor"><span class="secnum">21.1.1</span> The Number Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-number-constructor-number-value" title="Number ( value )"><span class="secnum">21.1.1.1</span> Number ( <var>value</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-properties-of-the-number-constructor" title="Properties of the Number Constructor"><span class="secnum">21.1.2</span> Properties of the Number Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-number.epsilon" title="Number.EPSILON"><span class="secnum">21.1.2.1</span> Number.EPSILON</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-number.isfinite" title="Number.isFinite ( number )"><span class="secnum">21.1.2.2</span> Number.isFinite ( <var>number</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-number.isinteger" title="Number.isInteger ( number )"><span class="secnum">21.1.2.3</span> Number.isInteger ( <var>number</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-number.isnan" title="Number.isNaN ( number )"><span class="secnum">21.1.2.4</span> Number.isNaN ( <var>number</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-number.issafeinteger" title="Number.isSafeInteger ( number )"><span class="secnum">21.1.2.5</span> Number.isSafeInteger ( <var>number</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-number.max_safe_integer" title="Number.MAX_SAFE_INTEGER"><span class="secnum">21.1.2.6</span> Number.MAX_SAFE_INTEGER</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-number.max_value" title="Number.MAX_VALUE"><span class="secnum">21.1.2.7</span> Number.MAX_VALUE</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-number.min_safe_integer" title="Number.MIN_SAFE_INTEGER"><span class="secnum">21.1.2.8</span> Number.MIN_SAFE_INTEGER</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-number.min_value" title="Number.MIN_VALUE"><span class="secnum">21.1.2.9</span> Number.MIN_VALUE</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-number.nan" title="Number.NaN"><span class="secnum">21.1.2.10</span> Number.NaN</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-number.negative_infinity" title="Number.NEGATIVE_INFINITY"><span class="secnum">21.1.2.11</span> Number.NEGATIVE_INFINITY</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-number.parsefloat" title="Number.parseFloat ( string )"><span class="secnum">21.1.2.12</span> Number.parseFloat ( <var>string</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-number.parseint" title="Number.parseInt ( string, radix )"><span class="secnum">21.1.2.13</span> Number.parseInt ( <var>string</var>, <var>radix</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-number.positive_infinity" title="Number.POSITIVE_INFINITY"><span class="secnum">21.1.2.14</span> Number.POSITIVE_INFINITY</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-number.prototype" title="Number.prototype"><span class="secnum">21.1.2.15</span> Number.prototype</a></li></ol></li><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-properties-of-the-number-prototype-object" title="Properties of the Number Prototype Object"><span class="secnum">21.1.3</span> Properties of the Number Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-number.prototype.constructor" title="Number.prototype.constructor"><span class="secnum">21.1.3.1</span> Number.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-number.prototype.toexponential" title="Number.prototype.toExponential ( fractionDigits )"><span class="secnum">21.1.3.2</span> Number.prototype.toExponential ( <var>fractionDigits</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-number.prototype.tofixed" title="Number.prototype.toFixed ( fractionDigits )"><span class="secnum">21.1.3.3</span> Number.prototype.toFixed ( <var>fractionDigits</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-number.prototype.tolocalestring" title="Number.prototype.toLocaleString ( [ reserved1 [ , reserved2 ] ] )"><span class="secnum">21.1.3.4</span> Number.prototype.toLocaleString ( [ <var>reserved1</var> [ , <var>reserved2</var> ] ] )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-number.prototype.toprecision" title="Number.prototype.toPrecision ( precision )"><span class="secnum">21.1.3.5</span> Number.prototype.toPrecision ( <var>precision</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-number.prototype.tostring" title="Number.prototype.toString ( [ radix ] )"><span class="secnum">21.1.3.6</span> Number.prototype.toString ( [ <var>radix</var> ] )</a></li><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-number.prototype.valueof" title="Number.prototype.valueOf ( )"><span class="secnum">21.1.3.7</span> Number.prototype.valueOf ( )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-thisnumbervalue" title="ThisNumberValue ( value )"><span class="secnum">21.1.3.7.1</span> ThisNumberValue ( <var>value</var> )</a></li></ol></li></ol></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-properties-of-number-instances" title="Properties of Number Instances"><span class="secnum">21.1.4</span> Properties of Number Instances</a></li></ol></li><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-bigint-objects" title="BigInt Objects"><span class="secnum">21.2</span> BigInt Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-bigint-constructor" title="The BigInt Constructor"><span class="secnum">21.2.1</span> The BigInt Constructor</a><ol class="toc"><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-bigint-constructor-number-value" title="BigInt ( value )"><span class="secnum">21.2.1.1</span> BigInt ( <var>value</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-numbertobigint" title="NumberToBigInt ( number )"><span class="secnum">21.2.1.1.1</span> NumberToBigInt ( <var>number</var> )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-properties-of-the-bigint-constructor" title="Properties of the BigInt Constructor"><span class="secnum">21.2.2</span> Properties of the BigInt Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-bigint.asintn" title="BigInt.asIntN ( bits, bigint )"><span class="secnum">21.2.2.1</span> BigInt.asIntN ( <var>bits</var>, <var>bigint</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-bigint.asuintn" title="BigInt.asUintN ( bits, bigint )"><span class="secnum">21.2.2.2</span> BigInt.asUintN ( <var>bits</var>, <var>bigint</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-bigint.prototype" title="BigInt.prototype"><span class="secnum">21.2.2.3</span> BigInt.prototype</a></li></ol></li><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-properties-of-the-bigint-prototype-object" title="Properties of the BigInt Prototype Object"><span class="secnum">21.2.3</span> Properties of the BigInt Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-bigint.prototype.constructor" title="BigInt.prototype.constructor"><span class="secnum">21.2.3.1</span> BigInt.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-bigint.prototype.tolocalestring" title="BigInt.prototype.toLocaleString ( [ reserved1 [ , reserved2 ] ] )"><span class="secnum">21.2.3.2</span> BigInt.prototype.toLocaleString ( [ <var>reserved1</var> [ , <var>reserved2</var> ] ] )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-bigint.prototype.tostring" title="BigInt.prototype.toString ( [ radix ] )"><span class="secnum">21.2.3.3</span> BigInt.prototype.toString ( [ <var>radix</var> ] )</a></li><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-bigint.prototype.valueof" title="BigInt.prototype.valueOf ( )"><span class="secnum">21.2.3.4</span> BigInt.prototype.valueOf ( )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-thisbigintvalue" title="ThisBigIntValue ( value )"><span class="secnum">21.2.3.4.1</span> ThisBigIntValue ( <var>value</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-bigint.prototype-%symbol.tostringtag%" title="BigInt.prototype [ %Symbol.toStringTag% ]"><span class="secnum">21.2.3.5</span> BigInt.prototype [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-properties-of-bigint-instances" title="Properties of BigInt Instances"><span class="secnum">21.2.4</span> Properties of BigInt Instances</a></li></ol></li><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-math-object" title="The Math Object"><span class="secnum">21.3</span> The Math Object</a><ol class="toc"><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-value-properties-of-the-math-object" title="Value Properties of the Math Object"><span class="secnum">21.3.1</span> Value Properties of the Math Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.e" title="Math.E"><span class="secnum">21.3.1.1</span> Math.E</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.ln10" title="Math.LN10"><span class="secnum">21.3.1.2</span> Math.LN10</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.ln2" title="Math.LN2"><span class="secnum">21.3.1.3</span> Math.LN2</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.log10e" title="Math.LOG10E"><span class="secnum">21.3.1.4</span> Math.LOG10E</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.log2e" title="Math.LOG2E"><span class="secnum">21.3.1.5</span> Math.LOG2E</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.pi" title="Math.PI"><span class="secnum">21.3.1.6</span> Math.PI</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.sqrt1_2" title="Math.SQRT1_2"><span class="secnum">21.3.1.7</span> Math.SQRT1_2</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.sqrt2" title="Math.SQRT2"><span class="secnum">21.3.1.8</span> Math.SQRT2</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math-%symbol.tostringtag%" title="Math [ %Symbol.toStringTag% ]"><span class="secnum">21.3.1.9</span> Math [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-function-properties-of-the-math-object" title="Function Properties of the Math Object"><span class="secnum">21.3.2</span> Function Properties of the Math Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.abs" title="Math.abs ( x )"><span class="secnum">21.3.2.1</span> Math.abs ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.acos" title="Math.acos ( x )"><span class="secnum">21.3.2.2</span> Math.acos ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.acosh" title="Math.acosh ( x )"><span class="secnum">21.3.2.3</span> Math.acosh ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.asin" title="Math.asin ( x )"><span class="secnum">21.3.2.4</span> Math.asin ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.asinh" title="Math.asinh ( x )"><span class="secnum">21.3.2.5</span> Math.asinh ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.atan" title="Math.atan ( x )"><span class="secnum">21.3.2.6</span> Math.atan ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.atanh" title="Math.atanh ( x )"><span class="secnum">21.3.2.7</span> Math.atanh ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.atan2" title="Math.atan2 ( y, x )"><span class="secnum">21.3.2.8</span> Math.atan2 ( <var>y</var>, <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.cbrt" title="Math.cbrt ( x )"><span class="secnum">21.3.2.9</span> Math.cbrt ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.ceil" title="Math.ceil ( x )"><span class="secnum">21.3.2.10</span> Math.ceil ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.clz32" title="Math.clz32 ( x )"><span class="secnum">21.3.2.11</span> Math.clz32 ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.cos" title="Math.cos ( x )"><span class="secnum">21.3.2.12</span> Math.cos ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.cosh" title="Math.cosh ( x )"><span class="secnum">21.3.2.13</span> Math.cosh ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.exp" title="Math.exp ( x )"><span class="secnum">21.3.2.14</span> Math.exp ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.expm1" title="Math.expm1 ( x )"><span class="secnum">21.3.2.15</span> Math.expm1 ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.floor" title="Math.floor ( x )"><span class="secnum">21.3.2.16</span> Math.floor ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.fround" title="Math.fround ( x )"><span class="secnum">21.3.2.17</span> Math.fround ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.f16round" title="Math.f16round ( x )"><span class="secnum">21.3.2.18</span> Math.f16round ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.hypot" title="Math.hypot ( ...args )"><span class="secnum">21.3.2.19</span> Math.hypot ( ...<var>args</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.imul" title="Math.imul ( x, y )"><span class="secnum">21.3.2.20</span> Math.imul ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.log" title="Math.log ( x )"><span class="secnum">21.3.2.21</span> Math.log ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.log1p" title="Math.log1p ( x )"><span class="secnum">21.3.2.22</span> Math.log1p ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.log10" title="Math.log10 ( x )"><span class="secnum">21.3.2.23</span> Math.log10 ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.log2" title="Math.log2 ( x )"><span class="secnum">21.3.2.24</span> Math.log2 ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.max" title="Math.max ( ...args )"><span class="secnum">21.3.2.25</span> Math.max ( ...<var>args</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.min" title="Math.min ( ...args )"><span class="secnum">21.3.2.26</span> Math.min ( ...<var>args</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.pow" title="Math.pow ( base, exponent )"><span class="secnum">21.3.2.27</span> Math.pow ( <var>base</var>, <var>exponent</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.random" title="Math.random ( )"><span class="secnum">21.3.2.28</span> Math.random ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.round" title="Math.round ( x )"><span class="secnum">21.3.2.29</span> Math.round ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.sign" title="Math.sign ( x )"><span class="secnum">21.3.2.30</span> Math.sign ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.sin" title="Math.sin ( x )"><span class="secnum">21.3.2.31</span> Math.sin ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.sinh" title="Math.sinh ( x )"><span class="secnum">21.3.2.32</span> Math.sinh ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.sqrt" title="Math.sqrt ( x )"><span class="secnum">21.3.2.33</span> Math.sqrt ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.sumprecise" title="Math.sumPrecise ( items )"><span class="secnum">21.3.2.34</span> Math.sumPrecise ( <var>items</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.tan" title="Math.tan ( x )"><span class="secnum">21.3.2.35</span> Math.tan ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.tanh" title="Math.tanh ( x )"><span class="secnum">21.3.2.36</span> Math.tanh ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-math.trunc" title="Math.trunc ( x )"><span class="secnum">21.3.2.37</span> Math.trunc ( <var>x</var> )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-date-objects" title="Date Objects"><span class="secnum">21.4</span> Date Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-overview-of-date-objects-and-definitions-of-abstract-operations" title="Overview of Date Objects and Definitions of Abstract Operations"><span class="secnum">21.4.1</span> Overview of Date Objects and Definitions of Abstract Operations</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-time-values-and-time-range" title="Time Values and Time Range"><span class="secnum">21.4.1.1</span> Time Values and Time Range</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-time-related-constants" title="Time-related Constants"><span class="secnum">21.4.1.2</span> Time-related Constants</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-day" title="Day ( t )"><span class="secnum">21.4.1.3</span> Day ( <var>t</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-timewithinday" title="TimeWithinDay ( t )"><span class="secnum">21.4.1.4</span> TimeWithinDay ( <var>t</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-daysinyear" title="DaysInYear ( y )"><span class="secnum">21.4.1.5</span> DaysInYear ( <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-dayfromyear" title="DayFromYear ( y )"><span class="secnum">21.4.1.6</span> DayFromYear ( <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-timefromyear" title="TimeFromYear ( y )"><span class="secnum">21.4.1.7</span> TimeFromYear ( <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-yearfromtime" title="YearFromTime ( t )"><span class="secnum">21.4.1.8</span> YearFromTime ( <var>t</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-daywithinyear" title="DayWithinYear ( t )"><span class="secnum">21.4.1.9</span> DayWithinYear ( <var>t</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-inleapyear" title="InLeapYear ( t )"><span class="secnum">21.4.1.10</span> InLeapYear ( <var>t</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-monthfromtime" title="MonthFromTime ( t )"><span class="secnum">21.4.1.11</span> MonthFromTime ( <var>t</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-datefromtime" title="DateFromTime ( t )"><span class="secnum">21.4.1.12</span> DateFromTime ( <var>t</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-weekday" title="WeekDay ( t )"><span class="secnum">21.4.1.13</span> WeekDay ( <var>t</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-hourfromtime" title="HourFromTime ( t )"><span class="secnum">21.4.1.14</span> HourFromTime ( <var>t</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-minfromtime" title="MinFromTime ( t )"><span class="secnum">21.4.1.15</span> MinFromTime ( <var>t</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-secfromtime" title="SecFromTime ( t )"><span class="secnum">21.4.1.16</span> SecFromTime ( <var>t</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-msfromtime" title="msFromTime ( t )"><span class="secnum">21.4.1.17</span> msFromTime ( <var>t</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-getutcepochnanoseconds" title="GetUTCEpochNanoseconds ( year, month, day, hour, minute, second, millisecond, microsecond, nanosecond )"><span class="secnum">21.4.1.18</span> GetUTCEpochNanoseconds ( <var>year</var>, <var>month</var>, <var>day</var>, <var>hour</var>, <var>minute</var>, <var>second</var>, <var>millisecond</var>, <var>microsecond</var>, <var>nanosecond</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-time-zone-identifiers" title="Time Zone Identifiers"><span class="secnum">21.4.1.19</span> Time Zone Identifiers</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-getnamedtimezoneepochnanoseconds" title="GetNamedTimeZoneEpochNanoseconds ( timeZoneIdentifier, year, month, day, hour, minute, second, millisecond, microsecond, nanosecond )"><span class="secnum">21.4.1.20</span> GetNamedTimeZoneEpochNanoseconds ( <var>timeZoneIdentifier</var>, <var>year</var>, <var>month</var>, <var>day</var>, <var>hour</var>, <var>minute</var>, <var>second</var>, <var>millisecond</var>, <var>microsecond</var>, <var>nanosecond</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-getnamedtimezoneoffsetnanoseconds" title="GetNamedTimeZoneOffsetNanoseconds ( timeZoneIdentifier, epochNanoseconds )"><span class="secnum">21.4.1.21</span> GetNamedTimeZoneOffsetNanoseconds ( <var>timeZoneIdentifier</var>, <var>epochNanoseconds</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-time-zone-identifier-record" title="Time Zone Identifier Record"><span class="secnum">21.4.1.22</span> Time Zone Identifier Record</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-availablenamedtimezoneidentifiers" title="AvailableNamedTimeZoneIdentifiers ( )"><span class="secnum">21.4.1.23</span> AvailableNamedTimeZoneIdentifiers ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-systemtimezoneidentifier" title="SystemTimeZoneIdentifier ( )"><span class="secnum">21.4.1.24</span> SystemTimeZoneIdentifier ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-localtime" title="LocalTime ( t )"><span class="secnum">21.4.1.25</span> LocalTime ( <var>t</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-utc-t" title="UTC ( t )"><span class="secnum">21.4.1.26</span> UTC ( <var>t</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-maketime" title="MakeTime ( hour, min, sec, ms )"><span class="secnum">21.4.1.27</span> MakeTime ( <var>hour</var>, <var>min</var>, <var>sec</var>, <var>ms</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-makeday" title="MakeDay ( year, month, date )"><span class="secnum">21.4.1.28</span> MakeDay ( <var>year</var>, <var>month</var>, <var>date</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-makedate" title="MakeDate ( day, time )"><span class="secnum">21.4.1.29</span> MakeDate ( <var>day</var>, <var>time</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-makefullyear" title="MakeFullYear ( year )"><span class="secnum">21.4.1.30</span> MakeFullYear ( <var>year</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-timeclip" title="TimeClip ( time )"><span class="secnum">21.4.1.31</span> TimeClip ( <var>time</var> )</a></li><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-date-time-string-format" title="Date Time String Format"><span class="secnum">21.4.1.32</span> Date Time String Format</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-expanded-years" title="Expanded Years"><span class="secnum">21.4.1.32.1</span> Expanded Years</a></li></ol></li><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-time-zone-offset-strings" title="Time Zone Offset String Format"><span class="secnum">21.4.1.33</span> Time Zone Offset String Format</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-istimezoneoffsetstring" title="IsTimeZoneOffsetString ( offsetString )"><span class="secnum">21.4.1.33.1</span> IsTimeZoneOffsetString ( <var>offsetString</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-parsetimezoneoffsetstring" title="ParseTimeZoneOffsetString ( offsetString )"><span class="secnum">21.4.1.33.2</span> ParseTimeZoneOffsetString ( <var>offsetString</var> )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-date-constructor" title="The Date Constructor"><span class="secnum">21.4.2</span> The Date Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date" title="Date ( ...values )"><span class="secnum">21.4.2.1</span> Date ( ...<var>values</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-properties-of-the-date-constructor" title="Properties of the Date Constructor"><span class="secnum">21.4.3</span> Properties of the Date Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.now" title="Date.now ( )"><span class="secnum">21.4.3.1</span> Date.now ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.parse" title="Date.parse ( string )"><span class="secnum">21.4.3.2</span> Date.parse ( <var>string</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype" title="Date.prototype"><span class="secnum">21.4.3.3</span> Date.prototype</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.utc" title="Date.UTC ( year [ , month [ , date [ , hours [ , minutes [ , seconds [ , ms ] ] ] ] ] ] )"><span class="secnum">21.4.3.4</span> Date.UTC ( <var>year</var> [ , <var>month</var> [ , <var>date</var> [ , <var>hours</var> [ , <var>minutes</var> [ , <var>seconds</var> [ , <var>ms</var> ] ] ] ] ] ] )</a></li></ol></li><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-properties-of-the-date-prototype-object" title="Properties of the Date Prototype Object"><span class="secnum">21.4.4</span> Properties of the Date Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.constructor" title="Date.prototype.constructor"><span class="secnum">21.4.4.1</span> Date.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.getdate" title="Date.prototype.getDate ( )"><span class="secnum">21.4.4.2</span> Date.prototype.getDate ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.getday" title="Date.prototype.getDay ( )"><span class="secnum">21.4.4.3</span> Date.prototype.getDay ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.getfullyear" title="Date.prototype.getFullYear ( )"><span class="secnum">21.4.4.4</span> Date.prototype.getFullYear ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.gethours" title="Date.prototype.getHours ( )"><span class="secnum">21.4.4.5</span> Date.prototype.getHours ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.getmilliseconds" title="Date.prototype.getMilliseconds ( )"><span class="secnum">21.4.4.6</span> Date.prototype.getMilliseconds ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.getminutes" title="Date.prototype.getMinutes ( )"><span class="secnum">21.4.4.7</span> Date.prototype.getMinutes ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.getmonth" title="Date.prototype.getMonth ( )"><span class="secnum">21.4.4.8</span> Date.prototype.getMonth ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.getseconds" title="Date.prototype.getSeconds ( )"><span class="secnum">21.4.4.9</span> Date.prototype.getSeconds ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.gettime" title="Date.prototype.getTime ( )"><span class="secnum">21.4.4.10</span> Date.prototype.getTime ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.gettimezoneoffset" title="Date.prototype.getTimezoneOffset ( )"><span class="secnum">21.4.4.11</span> Date.prototype.getTimezoneOffset ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.getutcdate" title="Date.prototype.getUTCDate ( )"><span class="secnum">21.4.4.12</span> Date.prototype.getUTCDate ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.getutcday" title="Date.prototype.getUTCDay ( )"><span class="secnum">21.4.4.13</span> Date.prototype.getUTCDay ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.getutcfullyear" title="Date.prototype.getUTCFullYear ( )"><span class="secnum">21.4.4.14</span> Date.prototype.getUTCFullYear ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.getutchours" title="Date.prototype.getUTCHours ( )"><span class="secnum">21.4.4.15</span> Date.prototype.getUTCHours ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.getutcmilliseconds" title="Date.prototype.getUTCMilliseconds ( )"><span class="secnum">21.4.4.16</span> Date.prototype.getUTCMilliseconds ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.getutcminutes" title="Date.prototype.getUTCMinutes ( )"><span class="secnum">21.4.4.17</span> Date.prototype.getUTCMinutes ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.getutcmonth" title="Date.prototype.getUTCMonth ( )"><span class="secnum">21.4.4.18</span> Date.prototype.getUTCMonth ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.getutcseconds" title="Date.prototype.getUTCSeconds ( )"><span class="secnum">21.4.4.19</span> Date.prototype.getUTCSeconds ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.setdate" title="Date.prototype.setDate ( date )"><span class="secnum">21.4.4.20</span> Date.prototype.setDate ( <var>date</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.setfullyear" title="Date.prototype.setFullYear ( year [ , month [ , date ] ] )"><span class="secnum">21.4.4.21</span> Date.prototype.setFullYear ( <var>year</var> [ , <var>month</var> [ , <var>date</var> ] ] )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.sethours" title="Date.prototype.setHours ( hour [ , min [ , sec [ , ms ] ] ] )"><span class="secnum">21.4.4.22</span> Date.prototype.setHours ( <var>hour</var> [ , <var>min</var> [ , <var>sec</var> [ , <var>ms</var> ] ] ] )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.setmilliseconds" title="Date.prototype.setMilliseconds ( ms )"><span class="secnum">21.4.4.23</span> Date.prototype.setMilliseconds ( <var>ms</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.setminutes" title="Date.prototype.setMinutes ( min [ , sec [ , ms ] ] )"><span class="secnum">21.4.4.24</span> Date.prototype.setMinutes ( <var>min</var> [ , <var>sec</var> [ , <var>ms</var> ] ] )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.setmonth" title="Date.prototype.setMonth ( month [ , date ] )"><span class="secnum">21.4.4.25</span> Date.prototype.setMonth ( <var>month</var> [ , <var>date</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.setseconds" title="Date.prototype.setSeconds ( sec [ , ms ] )"><span class="secnum">21.4.4.26</span> Date.prototype.setSeconds ( <var>sec</var> [ , <var>ms</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.settime" title="Date.prototype.setTime ( time )"><span class="secnum">21.4.4.27</span> Date.prototype.setTime ( <var>time</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.setutcdate" title="Date.prototype.setUTCDate ( date )"><span class="secnum">21.4.4.28</span> Date.prototype.setUTCDate ( <var>date</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.setutcfullyear" title="Date.prototype.setUTCFullYear ( year [ , month [ , date ] ] )"><span class="secnum">21.4.4.29</span> Date.prototype.setUTCFullYear ( <var>year</var> [ , <var>month</var> [ , <var>date</var> ] ] )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.setutchours" title="Date.prototype.setUTCHours ( hour [ , min [ , sec [ , ms ] ] ] )"><span class="secnum">21.4.4.30</span> Date.prototype.setUTCHours ( <var>hour</var> [ , <var>min</var> [ , <var>sec</var> [ , <var>ms</var> ] ] ] )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.setutcmilliseconds" title="Date.prototype.setUTCMilliseconds ( ms )"><span class="secnum">21.4.4.31</span> Date.prototype.setUTCMilliseconds ( <var>ms</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.setutcminutes" title="Date.prototype.setUTCMinutes ( min [ , sec [ , ms ] ] )"><span class="secnum">21.4.4.32</span> Date.prototype.setUTCMinutes ( <var>min</var> [ , <var>sec</var> [ , <var>ms</var> ] ] )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.setutcmonth" title="Date.prototype.setUTCMonth ( month [ , date ] )"><span class="secnum">21.4.4.33</span> Date.prototype.setUTCMonth ( <var>month</var> [ , <var>date</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.setutcseconds" title="Date.prototype.setUTCSeconds ( sec [ , ms ] )"><span class="secnum">21.4.4.34</span> Date.prototype.setUTCSeconds ( <var>sec</var> [ , <var>ms</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.todatestring" title="Date.prototype.toDateString ( )"><span class="secnum">21.4.4.35</span> Date.prototype.toDateString ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.toisostring" title="Date.prototype.toISOString ( )"><span class="secnum">21.4.4.36</span> Date.prototype.toISOString ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.tojson" title="Date.prototype.toJSON ( key )"><span class="secnum">21.4.4.37</span> Date.prototype.toJSON ( <var>key</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.tolocaledatestring" title="Date.prototype.toLocaleDateString ( [ reserved1 [ , reserved2 ] ] )"><span class="secnum">21.4.4.38</span> Date.prototype.toLocaleDateString ( [ <var>reserved1</var> [ , <var>reserved2</var> ] ] )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.tolocalestring" title="Date.prototype.toLocaleString ( [ reserved1 [ , reserved2 ] ] )"><span class="secnum">21.4.4.39</span> Date.prototype.toLocaleString ( [ <var>reserved1</var> [ , <var>reserved2</var> ] ] )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.tolocaletimestring" title="Date.prototype.toLocaleTimeString ( [ reserved1 [ , reserved2 ] ] )"><span class="secnum">21.4.4.40</span> Date.prototype.toLocaleTimeString ( [ <var>reserved1</var> [ , <var>reserved2</var> ] ] )</a></li><li><span class="item-toggle">+</span><a href="numbers-and-dates.html#sec-date.prototype.tostring" title="Date.prototype.toString ( )"><span class="secnum">21.4.4.41</span> Date.prototype.toString ( )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-timestring" title="TimeString ( tv )"><span class="secnum">21.4.4.41.1</span> TimeString ( <var>tv</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-datestring" title="DateString ( tv )"><span class="secnum">21.4.4.41.2</span> DateString ( <var>tv</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-timezoneestring" title="TimeZoneString ( tv )"><span class="secnum">21.4.4.41.3</span> TimeZoneString ( <var>tv</var> )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-todatestring" title="ToDateString ( tv )"><span class="secnum">21.4.4.41.4</span> ToDateString ( <var>tv</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.totimestring" title="Date.prototype.toTimeString ( )"><span class="secnum">21.4.4.42</span> Date.prototype.toTimeString ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.toutcstring" title="Date.prototype.toUTCString ( )"><span class="secnum">21.4.4.43</span> Date.prototype.toUTCString ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype.valueof" title="Date.prototype.valueOf ( )"><span class="secnum">21.4.4.44</span> Date.prototype.valueOf ( )</a></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-date.prototype-%symbol.toprimitive%" title="Date.prototype [ %Symbol.toPrimitive% ] ( hint )"><span class="secnum">21.4.4.45</span> Date.prototype [ %Symbol.toPrimitive% ] ( <var>hint</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="numbers-and-dates.html#sec-properties-of-date-instances" title="Properties of Date Instances"><span class="secnum">21.4.5</span> Properties of Date Instances</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-text-processing" title="Text Processing"><span class="secnum">22</span> Text Processing</a><ol class="toc"><li><span class="item-toggle">+</span><a href="text-processing.html#sec-string-objects" title="String Objects"><span class="secnum">22.1</span> String Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="text-processing.html#sec-string-constructor" title="The String Constructor"><span class="secnum">22.1.1</span> The String Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string-constructor-string-value" title="String ( value )"><span class="secnum">22.1.1.1</span> String ( <var>value</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-properties-of-the-string-constructor" title="Properties of the String Constructor"><span class="secnum">22.1.2</span> Properties of the String Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.fromcharcode" title="String.fromCharCode ( ...codeUnits )"><span class="secnum">22.1.2.1</span> String.fromCharCode ( ...<var>codeUnits</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.fromcodepoint" title="String.fromCodePoint ( ...codePoints )"><span class="secnum">22.1.2.2</span> String.fromCodePoint ( ...<var>codePoints</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype" title="String.prototype"><span class="secnum">22.1.2.3</span> String.prototype</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.raw" title="String.raw ( template, ...substitutions )"><span class="secnum">22.1.2.4</span> String.raw ( <var>template</var>, ...<var>substitutions</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-properties-of-the-string-prototype-object" title="Properties of the String Prototype Object"><span class="secnum">22.1.3</span> Properties of the String Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.at" title="String.prototype.at ( index )"><span class="secnum">22.1.3.1</span> String.prototype.at ( <var>index</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.charat" title="String.prototype.charAt ( pos )"><span class="secnum">22.1.3.2</span> String.prototype.charAt ( <var>pos</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.charcodeat" title="String.prototype.charCodeAt ( pos )"><span class="secnum">22.1.3.3</span> String.prototype.charCodeAt ( <var>pos</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.codepointat" title="String.prototype.codePointAt ( pos )"><span class="secnum">22.1.3.4</span> String.prototype.codePointAt ( <var>pos</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.concat" title="String.prototype.concat ( ...args )"><span class="secnum">22.1.3.5</span> String.prototype.concat ( ...<var>args</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.constructor" title="String.prototype.constructor"><span class="secnum">22.1.3.6</span> String.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.endswith" title="String.prototype.endsWith ( searchString [ , endPosition ] )"><span class="secnum">22.1.3.7</span> String.prototype.endsWith ( <var>searchString</var> [ , <var>endPosition</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.includes" title="String.prototype.includes ( searchString [ , position ] )"><span class="secnum">22.1.3.8</span> String.prototype.includes ( <var>searchString</var> [ , <var>position</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.indexof" title="String.prototype.indexOf ( searchString [ , position ] )"><span class="secnum">22.1.3.9</span> String.prototype.indexOf ( <var>searchString</var> [ , <var>position</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.iswellformed" title="String.prototype.isWellFormed ( )"><span class="secnum">22.1.3.10</span> String.prototype.isWellFormed ( )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.lastindexof" title="String.prototype.lastIndexOf ( searchString [ , position ] )"><span class="secnum">22.1.3.11</span> String.prototype.lastIndexOf ( <var>searchString</var> [ , <var>position</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.localecompare" title="String.prototype.localeCompare ( that [ , reserved1 [ , reserved2 ] ] )"><span class="secnum">22.1.3.12</span> String.prototype.localeCompare ( <var>that</var> [ , <var>reserved1</var> [ , <var>reserved2</var> ] ] )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.match" title="String.prototype.match ( regexp )"><span class="secnum">22.1.3.13</span> String.prototype.match ( <var>regexp</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.matchall" title="String.prototype.matchAll ( regexp )"><span class="secnum">22.1.3.14</span> String.prototype.matchAll ( <var>regexp</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.normalize" title="String.prototype.normalize ( [ form ] )"><span class="secnum">22.1.3.15</span> String.prototype.normalize ( [ <var>form</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.padend" title="String.prototype.padEnd ( maxLength [ , fillString ] )"><span class="secnum">22.1.3.16</span> String.prototype.padEnd ( <var>maxLength</var> [ , <var>fillString</var> ] )</a></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-string.prototype.padstart" title="String.prototype.padStart ( maxLength [ , fillString ] )"><span class="secnum">22.1.3.17</span> String.prototype.padStart ( <var>maxLength</var> [ , <var>fillString</var> ] )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-stringpaddingbuiltinsimpl" title="StringPaddingBuiltinsImpl ( O, maxLength, fillString, placement )"><span class="secnum">22.1.3.17.1</span> StringPaddingBuiltinsImpl ( <var>O</var>, <var>maxLength</var>, <var>fillString</var>, <var>placement</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-stringpad" title="StringPad ( S, maxLength, fillString, placement )"><span class="secnum">22.1.3.17.2</span> StringPad ( <var>S</var>, <var>maxLength</var>, <var>fillString</var>, <var>placement</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-tozeropaddeddecimalstring" title="ToZeroPaddedDecimalString ( n, minLength )"><span class="secnum">22.1.3.17.3</span> ToZeroPaddedDecimalString ( <var>n</var>, <var>minLength</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.repeat" title="String.prototype.repeat ( count )"><span class="secnum">22.1.3.18</span> String.prototype.repeat ( <var>count</var> )</a></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-string.prototype.replace" title="String.prototype.replace ( searchValue, replaceValue )"><span class="secnum">22.1.3.19</span> String.prototype.replace ( <var>searchValue</var>, <var>replaceValue</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-getsubstitution" title="GetSubstitution ( matched, str, position, captures, namedCaptures, replacementTemplate )"><span class="secnum">22.1.3.19.1</span> GetSubstitution ( <var>matched</var>, <var>str</var>, <var>position</var>, <var>captures</var>, <var>namedCaptures</var>, <var>replacementTemplate</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.replaceall" title="String.prototype.replaceAll ( searchValue, replaceValue )"><span class="secnum">22.1.3.20</span> String.prototype.replaceAll ( <var>searchValue</var>, <var>replaceValue</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.search" title="String.prototype.search ( regexp )"><span class="secnum">22.1.3.21</span> String.prototype.search ( <var>regexp</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.slice" title="String.prototype.slice ( start, end )"><span class="secnum">22.1.3.22</span> String.prototype.slice ( <var>start</var>, <var>end</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.split" title="String.prototype.split ( separator, limit )"><span class="secnum">22.1.3.23</span> String.prototype.split ( <var>separator</var>, <var>limit</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.startswith" title="String.prototype.startsWith ( searchString [ , position ] )"><span class="secnum">22.1.3.24</span> String.prototype.startsWith ( <var>searchString</var> [ , <var>position</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.substring" title="String.prototype.substring ( start, end )"><span class="secnum">22.1.3.25</span> String.prototype.substring ( <var>start</var>, <var>end</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.tolocalelowercase" title="String.prototype.toLocaleLowerCase ( [ reserved1 [ , reserved2 ] ] )"><span class="secnum">22.1.3.26</span> String.prototype.toLocaleLowerCase ( [ <var>reserved1</var> [ , <var>reserved2</var> ] ] )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.tolocaleuppercase" title="String.prototype.toLocaleUpperCase ( [ reserved1 [ , reserved2 ] ] )"><span class="secnum">22.1.3.27</span> String.prototype.toLocaleUpperCase ( [ <var>reserved1</var> [ , <var>reserved2</var> ] ] )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.tolowercase" title="String.prototype.toLowerCase ( )"><span class="secnum">22.1.3.28</span> String.prototype.toLowerCase ( )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.tostring" title="String.prototype.toString ( )"><span class="secnum">22.1.3.29</span> String.prototype.toString ( )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.touppercase" title="String.prototype.toUpperCase ( )"><span class="secnum">22.1.3.30</span> String.prototype.toUpperCase ( )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.towellformed" title="String.prototype.toWellFormed ( )"><span class="secnum">22.1.3.31</span> String.prototype.toWellFormed ( )</a></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-string.prototype.trim" title="String.prototype.trim ( )"><span class="secnum">22.1.3.32</span> String.prototype.trim ( )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-trimstring" title="TrimString ( string, where )"><span class="secnum">22.1.3.32.1</span> TrimString ( <var>string</var>, <var>where</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.trimend" title="String.prototype.trimEnd ( )"><span class="secnum">22.1.3.33</span> String.prototype.trimEnd ( )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype.trimstart" title="String.prototype.trimStart ( )"><span class="secnum">22.1.3.34</span> String.prototype.trimStart ( )</a></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-string.prototype.valueof" title="String.prototype.valueOf ( )"><span class="secnum">22.1.3.35</span> String.prototype.valueOf ( )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-thisstringvalue" title="ThisStringValue ( value )"><span class="secnum">22.1.3.35.1</span> ThisStringValue ( <var>value</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-string.prototype-%symbol.iterator%" title="String.prototype [ %Symbol.iterator% ] ( )"><span class="secnum">22.1.3.36</span> String.prototype [ %Symbol.iterator% ] ( )</a></li></ol></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-properties-of-string-instances" title="Properties of String Instances"><span class="secnum">22.1.4</span> Properties of String Instances</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-properties-of-string-instances-length" title="length"><span class="secnum">22.1.4.1</span> length</a></li></ol></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-string-iterator-objects" title="String Iterator Objects"><span class="secnum">22.1.5</span> String Iterator Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="text-processing.html#sec-%stringiteratorprototype%-object" title="The %StringIteratorPrototype% Object"><span class="secnum">22.1.5.1</span> The %StringIteratorPrototype% Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-%stringiteratorprototype%.next" title="%StringIteratorPrototype%.next ( )"><span class="secnum">22.1.5.1.1</span> %StringIteratorPrototype%.next ( )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-%stringiteratorprototype%-%symbol.tostringtag%" title="%StringIteratorPrototype% [ %Symbol.toStringTag% ]"><span class="secnum">22.1.5.1.2</span> %StringIteratorPrototype% [ %Symbol.toStringTag% ]</a></li></ol></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-regexp-regular-expression-objects" title="RegExp (Regular Expression) Objects"><span class="secnum">22.2</span> RegExp (Regular Expression) Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="text-processing.html#sec-patterns" title="Patterns"><span class="secnum">22.2.1</span> Patterns</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-patterns-static-semantics-early-errors" title="Static Semantics: Early Errors"><span class="secnum">22.2.1.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-countleftcapturingparenswithin" title="Static Semantics: CountLeftCapturingParensWithin ( node )"><span class="secnum">22.2.1.2</span> SS: CountLeftCapturingParensWithin ( <var>node</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-countleftcapturingparensbefore" title="Static Semantics: CountLeftCapturingParensBefore ( node )"><span class="secnum">22.2.1.3</span> SS: CountLeftCapturingParensBefore ( <var>node</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-mightbothparticipate" title="Static Semantics: MightBothParticipate ( x, y )"><span class="secnum">22.2.1.4</span> SS: MightBothParticipate ( <var>x</var>, <var>y</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-patterns-static-semantics-capturing-group-number" title="Static Semantics: CapturingGroupNumber"><span class="secnum">22.2.1.5</span> SS: CapturingGroupNumber</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-patterns-static-semantics-is-character-class" title="Static Semantics: IsCharacterClass"><span class="secnum">22.2.1.6</span> SS: IsCharacterClass</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-patterns-static-semantics-character-value" title="Static Semantics: CharacterValue"><span class="secnum">22.2.1.7</span> SS: CharacterValue</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-static-semantics-maycontainstrings" title="Static Semantics: MayContainStrings"><span class="secnum">22.2.1.8</span> SS: MayContainStrings</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-groupspecifiersthatmatch" title="Static Semantics: GroupSpecifiersThatMatch ( thisGroupName )"><span class="secnum">22.2.1.9</span> SS: GroupSpecifiersThatMatch ( <var>thisGroupName</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-static-semantics-capturinggroupname" title="Static Semantics: CapturingGroupName"><span class="secnum">22.2.1.10</span> SS: CapturingGroupName</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-regexpidentifiercodepoints" title="Static Semantics: RegExpIdentifierCodePoints"><span class="secnum">22.2.1.11</span> SS: RegExpIdentifierCodePoints</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-regexpidentifiercodepoint" title="Static Semantics: RegExpIdentifierCodePoint"><span class="secnum">22.2.1.12</span> SS: RegExpIdentifierCodePoint</a></li></ol></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-pattern-semantics" title="Pattern Semantics"><span class="secnum">22.2.2</span> Pattern Semantics</a><ol class="toc"><li><span class="item-toggle">+</span><a href="text-processing.html#sec-pattern-notation" title="Notation"><span class="secnum">22.2.2.1</span> Notation</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-regexp-records" title="RegExp Records"><span class="secnum">22.2.2.1.1</span> RegExp Records</a></li></ol></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-compilepattern" title="Runtime Semantics: CompilePattern"><span class="secnum">22.2.2.2</span> RS: CompilePattern</a></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-compilesubpattern" title="Runtime Semantics: CompileSubpattern"><span class="secnum">22.2.2.3</span> RS: CompileSubpattern</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-runtime-semantics-repeatmatcher-abstract-operation" title="RepeatMatcher ( m, min, max, greedy, x, c, parenIndex, parenCount )"><span class="secnum">22.2.2.3.1</span> RepeatMatcher ( <var>m</var>, <var>min</var>, <var>max</var>, <var>greedy</var>, <var>x</var>, <var>c</var>, <var>parenIndex</var>, <var>parenCount</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-emptymatcher" title="EmptyMatcher ( )"><span class="secnum">22.2.2.3.2</span> EmptyMatcher ( )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-matchtwoalternatives" title="MatchTwoAlternatives ( m1, m2 )"><span class="secnum">22.2.2.3.3</span> MatchTwoAlternatives ( <var>m1</var>, <var>m2</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-matchsequence" title="MatchSequence ( m1, m2, direction )"><span class="secnum">22.2.2.3.4</span> MatchSequence ( <var>m1</var>, <var>m2</var>, <var>direction</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-compileassertion" title="Runtime Semantics: CompileAssertion"><span class="secnum">22.2.2.4</span> RS: CompileAssertion</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-runtime-semantics-iswordchar-abstract-operation" title="IsWordChar ( rer, Input, e )"><span class="secnum">22.2.2.4.1</span> IsWordChar ( <var>rer</var>, <var>Input</var>, <var>e</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-compilequantifier" title="Runtime Semantics: CompileQuantifier"><span class="secnum">22.2.2.5</span> RS: CompileQuantifier</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-compilequantifierprefix" title="Runtime Semantics: CompileQuantifierPrefix"><span class="secnum">22.2.2.6</span> RS: CompileQuantifierPrefix</a></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-compileatom" title="Runtime Semantics: CompileAtom"><span class="secnum">22.2.2.7</span> RS: CompileAtom</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-runtime-semantics-charactersetmatcher-abstract-operation" title="CharacterSetMatcher ( rer, A, invert, direction )"><span class="secnum">22.2.2.7.1</span> CharacterSetMatcher ( <var>rer</var>, <var>A</var>, <var>invert</var>, <var>direction</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-backreference-matcher" title="BackreferenceMatcher ( rer, ns, direction )"><span class="secnum">22.2.2.7.2</span> BackreferenceMatcher ( <var>rer</var>, <var>ns</var>, <var>direction</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-runtime-semantics-canonicalize-ch" title="Canonicalize ( rer, ch )"><span class="secnum">22.2.2.7.3</span> Canonicalize ( <var>rer</var>, <var>ch</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-updatemodifiers" title="UpdateModifiers ( rer, add, remove )"><span class="secnum">22.2.2.7.4</span> UpdateModifiers ( <var>rer</var>, <var>add</var>, <var>remove</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-compilecharacterclass" title="Runtime Semantics: CompileCharacterClass"><span class="secnum">22.2.2.8</span> RS: CompileCharacterClass</a></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-compiletocharset" title="Runtime Semantics: CompileToCharSet"><span class="secnum">22.2.2.9</span> RS: CompileToCharSet</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-runtime-semantics-characterrange-abstract-operation" title="CharacterRange ( A, B )"><span class="secnum">22.2.2.9.1</span> CharacterRange ( <var>A</var>, <var>B</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-runtime-semantics-haseitherunicodeflag-abstract-operation" title="HasEitherUnicodeFlag ( rer )"><span class="secnum">22.2.2.9.2</span> HasEitherUnicodeFlag ( <var>rer</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-wordcharacters" title="WordCharacters ( rer )"><span class="secnum">22.2.2.9.3</span> WordCharacters ( <var>rer</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-allcharacters" title="AllCharacters ( rer )"><span class="secnum">22.2.2.9.4</span> AllCharacters ( <var>rer</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-maybesimplecasefolding" title="MaybeSimpleCaseFolding ( rer, A )"><span class="secnum">22.2.2.9.5</span> MaybeSimpleCaseFolding ( <var>rer</var>, <var>A</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-charactercomplement" title="CharacterComplement ( rer, S )"><span class="secnum">22.2.2.9.6</span> CharacterComplement ( <var>rer</var>, <var>S</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-runtime-semantics-unicodematchproperty-p" title="UnicodeMatchProperty ( rer, p )"><span class="secnum">22.2.2.9.7</span> UnicodeMatchProperty ( <var>rer</var>, <var>p</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-runtime-semantics-unicodematchpropertyvalue-p-v" title="UnicodeMatchPropertyValue ( p, v )"><span class="secnum">22.2.2.9.8</span> UnicodeMatchPropertyValue ( <var>p</var>, <var>v</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-compileclasssetstring" title="Runtime Semantics: CompileClassSetString"><span class="secnum">22.2.2.10</span> RS: CompileClassSetString</a></li></ol></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-abstract-operations-for-regexp-creation" title="Abstract Operations for RegExp Creation"><span class="secnum">22.2.3</span> Abstract Operations for RegExp Creation</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-regexpcreate" title="RegExpCreate ( P, F )"><span class="secnum">22.2.3.1</span> RegExpCreate ( <var>P</var>, <var>F</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-regexpalloc" title="RegExpAlloc ( newTarget )"><span class="secnum">22.2.3.2</span> RegExpAlloc ( <var>newTarget</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-regexpinitialize" title="RegExpInitialize ( obj, pattern, flags )"><span class="secnum">22.2.3.3</span> RegExpInitialize ( <var>obj</var>, <var>pattern</var>, <var>flags</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-parsepattern" title="Static Semantics: ParsePattern ( patternText, u, v )"><span class="secnum">22.2.3.4</span> SS: ParsePattern ( <var>patternText</var>, <var>u</var>, <var>v</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-regexp-constructor" title="The RegExp Constructor"><span class="secnum">22.2.4</span> The RegExp Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-regexp-pattern-flags" title="RegExp ( pattern, flags )"><span class="secnum">22.2.4.1</span> RegExp ( <var>pattern</var>, <var>flags</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-properties-of-the-regexp-constructor" title="Properties of the RegExp Constructor"><span class="secnum">22.2.5</span> Properties of the RegExp Constructor</a><ol class="toc"><li><span class="item-toggle">+</span><a href="text-processing.html#sec-regexp.escape" title="RegExp.escape ( S )"><span class="secnum">22.2.5.1</span> RegExp.escape ( <var>S</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-encodeforregexpescape" title="EncodeForRegExpEscape ( cp )"><span class="secnum">22.2.5.1.1</span> EncodeForRegExpEscape ( <var>cp</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-regexp.prototype" title="RegExp.prototype"><span class="secnum">22.2.5.2</span> RegExp.prototype</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-get-regexp-%symbol.species%" title="get RegExp [ %Symbol.species% ]"><span class="secnum">22.2.5.3</span> get RegExp [ %Symbol.species% ]</a></li></ol></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-properties-of-the-regexp-prototype-object" title="Properties of the RegExp Prototype Object"><span class="secnum">22.2.6</span> Properties of the RegExp Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-regexp.prototype.constructor" title="RegExp.prototype.constructor"><span class="secnum">22.2.6.1</span> RegExp.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-regexp.prototype.exec" title="RegExp.prototype.exec ( string )"><span class="secnum">22.2.6.2</span> RegExp.prototype.exec ( <var>string</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-get-regexp.prototype.dotAll" title="get RegExp.prototype.dotAll"><span class="secnum">22.2.6.3</span> get RegExp.prototype.dotAll</a></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-get-regexp.prototype.flags" title="get RegExp.prototype.flags"><span class="secnum">22.2.6.4</span> get RegExp.prototype.flags</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-regexphasflag" title="RegExpHasFlag ( R, codeUnit )"><span class="secnum">22.2.6.4.1</span> RegExpHasFlag ( <var>R</var>, <var>codeUnit</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-get-regexp.prototype.global" title="get RegExp.prototype.global"><span class="secnum">22.2.6.5</span> get RegExp.prototype.global</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-get-regexp.prototype.hasIndices" title="get RegExp.prototype.hasIndices"><span class="secnum">22.2.6.6</span> get RegExp.prototype.hasIndices</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-get-regexp.prototype.ignorecase" title="get RegExp.prototype.ignoreCase"><span class="secnum">22.2.6.7</span> get RegExp.prototype.ignoreCase</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-regexp.prototype-%symbol.match%" title="RegExp.prototype [ %Symbol.match% ] ( string )"><span class="secnum">22.2.6.8</span> RegExp.prototype [ %Symbol.match% ] ( <var>string</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-regexp-prototype-%symbol.matchall%" title="RegExp.prototype [ %Symbol.matchAll% ] ( string )"><span class="secnum">22.2.6.9</span> RegExp.prototype [ %Symbol.matchAll% ] ( <var>string</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-get-regexp.prototype.multiline" title="get RegExp.prototype.multiline"><span class="secnum">22.2.6.10</span> get RegExp.prototype.multiline</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-regexp.prototype-%symbol.replace%" title="RegExp.prototype [ %Symbol.replace% ] ( string, replaceValue )"><span class="secnum">22.2.6.11</span> RegExp.prototype [ %Symbol.replace% ] ( <var>string</var>, <var>replaceValue</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-regexp.prototype-%symbol.search%" title="RegExp.prototype [ %Symbol.search% ] ( string )"><span class="secnum">22.2.6.12</span> RegExp.prototype [ %Symbol.search% ] ( <var>string</var> )</a></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-get-regexp.prototype.source" title="get RegExp.prototype.source"><span class="secnum">22.2.6.13</span> get RegExp.prototype.source</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-escaperegexppattern" title="EscapeRegExpPattern ( P, F )"><span class="secnum">22.2.6.13.1</span> EscapeRegExpPattern ( <var>P</var>, <var>F</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-regexp.prototype-%symbol.split%" title="RegExp.prototype [ %Symbol.split% ] ( string, limit )"><span class="secnum">22.2.6.14</span> RegExp.prototype [ %Symbol.split% ] ( <var>string</var>, <var>limit</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-get-regexp.prototype.sticky" title="get RegExp.prototype.sticky"><span class="secnum">22.2.6.15</span> get RegExp.prototype.sticky</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-regexp.prototype.test" title="RegExp.prototype.test ( S )"><span class="secnum">22.2.6.16</span> RegExp.prototype.test ( <var>S</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-regexp.prototype.tostring" title="RegExp.prototype.toString ( )"><span class="secnum">22.2.6.17</span> RegExp.prototype.toString ( )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-get-regexp.prototype.unicode" title="get RegExp.prototype.unicode"><span class="secnum">22.2.6.18</span> get RegExp.prototype.unicode</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-get-regexp.prototype.unicodesets" title="get RegExp.prototype.unicodeSets"><span class="secnum">22.2.6.19</span> get RegExp.prototype.unicodeSets</a></li></ol></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-abstract-operations-for-regexp-matching" title="Abstract Operations for RegExp Matching"><span class="secnum">22.2.7</span> Abstract Operations for RegExp Matching</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-regexpexec" title="RegExpExec ( R, S )"><span class="secnum">22.2.7.1</span> RegExpExec ( <var>R</var>, <var>S</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-regexpbuiltinexec" title="RegExpBuiltinExec ( R, S )"><span class="secnum">22.2.7.2</span> RegExpBuiltinExec ( <var>R</var>, <var>S</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-advancestringindex" title="AdvanceStringIndex ( S, index, unicode )"><span class="secnum">22.2.7.3</span> AdvanceStringIndex ( <var>S</var>, <var>index</var>, <var>unicode</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-getstringindex" title="GetStringIndex ( S, codePointIndex )"><span class="secnum">22.2.7.4</span> GetStringIndex ( <var>S</var>, <var>codePointIndex</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-match-records" title="Match Records"><span class="secnum">22.2.7.5</span> Match Records</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-getmatchstring" title="GetMatchString ( S, match )"><span class="secnum">22.2.7.6</span> GetMatchString ( <var>S</var>, <var>match</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-getmatchindexpair" title="GetMatchIndexPair ( S, match )"><span class="secnum">22.2.7.7</span> GetMatchIndexPair ( <var>S</var>, <var>match</var> )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-makematchindicesindexpairarray" title="MakeMatchIndicesIndexPairArray ( S, indices, groupNames, hasGroups )"><span class="secnum">22.2.7.8</span> MakeMatchIndicesIndexPairArray ( <var>S</var>, <var>indices</var>, <var>groupNames</var>, <var>hasGroups</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-properties-of-regexp-instances" title="Properties of RegExp Instances"><span class="secnum">22.2.8</span> Properties of RegExp Instances</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-lastindex" title="lastIndex"><span class="secnum">22.2.8.1</span> lastIndex</a></li></ol></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-regexp-string-iterator-objects" title="RegExp String Iterator Objects"><span class="secnum">22.2.9</span> RegExp String Iterator Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-createregexpstringiterator" title="CreateRegExpStringIterator ( R, S, global, fullUnicode )"><span class="secnum">22.2.9.1</span> CreateRegExpStringIterator ( <var>R</var>, <var>S</var>, <var>global</var>, <var>fullUnicode</var> )</a></li><li><span class="item-toggle">+</span><a href="text-processing.html#sec-%regexpstringiteratorprototype%-object" title="The %RegExpStringIteratorPrototype% Object"><span class="secnum">22.2.9.2</span> The %RegExpStringIteratorPrototype% Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-%regexpstringiteratorprototype%.next" title="%RegExpStringIteratorPrototype%.next ( )"><span class="secnum">22.2.9.2.1</span> %RegExpStringIteratorPrototype%.next ( )</a></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-%regexpstringiteratorprototype%-%symbol.tostringtag%" title="%RegExpStringIteratorPrototype% [ %Symbol.toStringTag% ]"><span class="secnum">22.2.9.2.2</span> %RegExpStringIteratorPrototype% [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle-none"></span><a href="text-processing.html#sec-properties-of-regexp-string-iterator-instances" title="Properties of RegExp String Iterator Instances"><span class="secnum">22.2.9.3</span> Properties of RegExp String Iterator Instances</a></li></ol></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-indexed-collections" title="Indexed Collections"><span class="secnum">23</span> Indexed Collections</a><ol class="toc"><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-array-objects" title="Array Objects"><span class="secnum">23.1</span> Array Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-array-constructor" title="The Array Constructor"><span class="secnum">23.1.1</span> The Array Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array" title="Array ( ...values )"><span class="secnum">23.1.1.1</span> Array ( ...<var>values</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-properties-of-the-array-constructor" title="Properties of the Array Constructor"><span class="secnum">23.1.2</span> Properties of the Array Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.from" title="Array.from ( items [ , mapper [ , thisArg ] ] )"><span class="secnum">23.1.2.1</span> Array.from ( <var>items</var> [ , <var>mapper</var> [ , <var>thisArg</var> ] ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.fromasync" title="Array.fromAsync ( items [ , mapper [ , thisArg ] ] )"><span class="secnum">23.1.2.2</span> Array.fromAsync ( <var>items</var> [ , <var>mapper</var> [ , <var>thisArg</var> ] ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.isarray" title="Array.isArray ( arg )"><span class="secnum">23.1.2.3</span> Array.isArray ( <var>arg</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.of" title="Array.of ( ...items )"><span class="secnum">23.1.2.4</span> Array.of ( ...<var>items</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype" title="Array.prototype"><span class="secnum">23.1.2.5</span> Array.prototype</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-get-array-%symbol.species%" title="get Array [ %Symbol.species% ]"><span class="secnum">23.1.2.6</span> get Array [ %Symbol.species% ]</a></li></ol></li><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-properties-of-the-array-prototype-object" title="Properties of the Array Prototype Object"><span class="secnum">23.1.3</span> Properties of the Array Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.at" title="Array.prototype.at ( index )"><span class="secnum">23.1.3.1</span> Array.prototype.at ( <var>index</var> )</a></li><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-array.prototype.concat" title="Array.prototype.concat ( ...items )"><span class="secnum">23.1.3.2</span> Array.prototype.concat ( ...<var>items</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-isconcatspreadable" title="IsConcatSpreadable ( O )"><span class="secnum">23.1.3.2.1</span> IsConcatSpreadable ( <var>O</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.constructor" title="Array.prototype.constructor"><span class="secnum">23.1.3.3</span> Array.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.copywithin" title="Array.prototype.copyWithin ( target, start [ , end ] )"><span class="secnum">23.1.3.4</span> Array.prototype.copyWithin ( <var>target</var>, <var>start</var> [ , <var>end</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.entries" title="Array.prototype.entries ( )"><span class="secnum">23.1.3.5</span> Array.prototype.entries ( )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.every" title="Array.prototype.every ( callback [ , thisArg ] )"><span class="secnum">23.1.3.6</span> Array.prototype.every ( <var>callback</var> [ , <var>thisArg</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.fill" title="Array.prototype.fill ( value [ , start [ , end ] ] )"><span class="secnum">23.1.3.7</span> Array.prototype.fill ( <var>value</var> [ , <var>start</var> [ , <var>end</var> ] ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.filter" title="Array.prototype.filter ( callback [ , thisArg ] )"><span class="secnum">23.1.3.8</span> Array.prototype.filter ( <var>callback</var> [ , <var>thisArg</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.find" title="Array.prototype.find ( predicate [ , thisArg ] )"><span class="secnum">23.1.3.9</span> Array.prototype.find ( <var>predicate</var> [ , <var>thisArg</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.findindex" title="Array.prototype.findIndex ( predicate [ , thisArg ] )"><span class="secnum">23.1.3.10</span> Array.prototype.findIndex ( <var>predicate</var> [ , <var>thisArg</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.findlast" title="Array.prototype.findLast ( predicate [ , thisArg ] )"><span class="secnum">23.1.3.11</span> Array.prototype.findLast ( <var>predicate</var> [ , <var>thisArg</var> ] )</a></li><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-array.prototype.findlastindex" title="Array.prototype.findLastIndex ( predicate [ , thisArg ] )"><span class="secnum">23.1.3.12</span> Array.prototype.findLastIndex ( <var>predicate</var> [ , <var>thisArg</var> ] )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-findviapredicate" title="FindViaPredicate ( O, len, direction, predicate, thisArg )"><span class="secnum">23.1.3.12.1</span> FindViaPredicate ( <var>O</var>, <var>len</var>, <var>direction</var>, <var>predicate</var>, <var>thisArg</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-array.prototype.flat" title="Array.prototype.flat ( [ depth ] )"><span class="secnum">23.1.3.13</span> Array.prototype.flat ( [ <var>depth</var> ] )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-flattenintoarray" title="FlattenIntoArray ( target, source, sourceLen, start, depth [ , mapperFunction [ , thisArg ] ] )"><span class="secnum">23.1.3.13.1</span> FlattenIntoArray ( <var>target</var>, <var>source</var>, <var>sourceLen</var>, <var>start</var>, <var>depth</var> [ , <var>mapperFunction</var> [ , <var>thisArg</var> ] ] )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.flatmap" title="Array.prototype.flatMap ( mapperFunction [ , thisArg ] )"><span class="secnum">23.1.3.14</span> Array.prototype.flatMap ( <var>mapperFunction</var> [ , <var>thisArg</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.foreach" title="Array.prototype.forEach ( callback [ , thisArg ] )"><span class="secnum">23.1.3.15</span> Array.prototype.forEach ( <var>callback</var> [ , <var>thisArg</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.includes" title="Array.prototype.includes ( searchElement [ , fromIndex ] )"><span class="secnum">23.1.3.16</span> Array.prototype.includes ( <var>searchElement</var> [ , <var>fromIndex</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.indexof" title="Array.prototype.indexOf ( searchElement [ , fromIndex ] )"><span class="secnum">23.1.3.17</span> Array.prototype.indexOf ( <var>searchElement</var> [ , <var>fromIndex</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.join" title="Array.prototype.join ( separator )"><span class="secnum">23.1.3.18</span> Array.prototype.join ( <var>separator</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.keys" title="Array.prototype.keys ( )"><span class="secnum">23.1.3.19</span> Array.prototype.keys ( )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.lastindexof" title="Array.prototype.lastIndexOf ( searchElement [ , fromIndex ] )"><span class="secnum">23.1.3.20</span> Array.prototype.lastIndexOf ( <var>searchElement</var> [ , <var>fromIndex</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.map" title="Array.prototype.map ( callback [ , thisArg ] )"><span class="secnum">23.1.3.21</span> Array.prototype.map ( <var>callback</var> [ , <var>thisArg</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.pop" title="Array.prototype.pop ( )"><span class="secnum">23.1.3.22</span> Array.prototype.pop ( )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.push" title="Array.prototype.push ( ...items )"><span class="secnum">23.1.3.23</span> Array.prototype.push ( ...<var>items</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.reduce" title="Array.prototype.reduce ( callback [ , initialValue ] )"><span class="secnum">23.1.3.24</span> Array.prototype.reduce ( <var>callback</var> [ , <var>initialValue</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.reduceright" title="Array.prototype.reduceRight ( callback [ , initialValue ] )"><span class="secnum">23.1.3.25</span> Array.prototype.reduceRight ( <var>callback</var> [ , <var>initialValue</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.reverse" title="Array.prototype.reverse ( )"><span class="secnum">23.1.3.26</span> Array.prototype.reverse ( )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.shift" title="Array.prototype.shift ( )"><span class="secnum">23.1.3.27</span> Array.prototype.shift ( )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.slice" title="Array.prototype.slice ( start, end )"><span class="secnum">23.1.3.28</span> Array.prototype.slice ( <var>start</var>, <var>end</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.some" title="Array.prototype.some ( callback [ , thisArg ] )"><span class="secnum">23.1.3.29</span> Array.prototype.some ( <var>callback</var> [ , <var>thisArg</var> ] )</a></li><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-array.prototype.sort" title="Array.prototype.sort ( comparator )"><span class="secnum">23.1.3.30</span> Array.prototype.sort ( <var>comparator</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-sortindexedproperties" title="SortIndexedProperties ( obj, len, SortCompare, holes )"><span class="secnum">23.1.3.30.1</span> SortIndexedProperties ( <var>obj</var>, <var>len</var>, <var>SortCompare</var>, <var>holes</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-comparearrayelements" title="CompareArrayElements ( x, y, comparator )"><span class="secnum">23.1.3.30.2</span> CompareArrayElements ( <var>x</var>, <var>y</var>, <var>comparator</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.splice" title="Array.prototype.splice ( start, deleteCount, ...items )"><span class="secnum">23.1.3.31</span> Array.prototype.splice ( <var>start</var>, <var>deleteCount</var>, ...<var>items</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.tolocalestring" title="Array.prototype.toLocaleString ( [ reserved1 [ , reserved2 ] ] )"><span class="secnum">23.1.3.32</span> Array.prototype.toLocaleString ( [ <var>reserved1</var> [ , <var>reserved2</var> ] ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.toreversed" title="Array.prototype.toReversed ( )"><span class="secnum">23.1.3.33</span> Array.prototype.toReversed ( )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.tosorted" title="Array.prototype.toSorted ( comparator )"><span class="secnum">23.1.3.34</span> Array.prototype.toSorted ( <var>comparator</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.tospliced" title="Array.prototype.toSpliced ( start, skipCount, ...items )"><span class="secnum">23.1.3.35</span> Array.prototype.toSpliced ( <var>start</var>, <var>skipCount</var>, ...<var>items</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.tostring" title="Array.prototype.toString ( )"><span class="secnum">23.1.3.36</span> Array.prototype.toString ( )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.unshift" title="Array.prototype.unshift ( ...items )"><span class="secnum">23.1.3.37</span> Array.prototype.unshift ( ...<var>items</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.values" title="Array.prototype.values ( )"><span class="secnum">23.1.3.38</span> Array.prototype.values ( )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype.with" title="Array.prototype.with ( index, value )"><span class="secnum">23.1.3.39</span> Array.prototype.with ( <var>index</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype-%symbol.iterator%" title="Array.prototype [ %Symbol.iterator% ] ( )"><span class="secnum">23.1.3.40</span> Array.prototype [ %Symbol.iterator% ] ( )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-array.prototype-%symbol.unscopables%" title="Array.prototype [ %Symbol.unscopables% ]"><span class="secnum">23.1.3.41</span> Array.prototype [ %Symbol.unscopables% ]</a></li></ol></li><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-properties-of-array-instances" title="Properties of Array Instances"><span class="secnum">23.1.4</span> Properties of Array Instances</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-properties-of-array-instances-length" title="length"><span class="secnum">23.1.4.1</span> length</a></li></ol></li><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-array-iterator-objects" title="Array Iterator Objects"><span class="secnum">23.1.5</span> Array Iterator Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-createarrayiterator" title="CreateArrayIterator ( array, kind )"><span class="secnum">23.1.5.1</span> CreateArrayIterator ( <var>array</var>, <var>kind</var> )</a></li><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-%arrayiteratorprototype%-object" title="The %ArrayIteratorPrototype% Object"><span class="secnum">23.1.5.2</span> The %ArrayIteratorPrototype% Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%arrayiteratorprototype%.next" title="%ArrayIteratorPrototype%.next ( )"><span class="secnum">23.1.5.2.1</span> %ArrayIteratorPrototype%.next ( )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%arrayiteratorprototype%-%symbol.tostringtag%" title="%ArrayIteratorPrototype% [ %Symbol.toStringTag% ]"><span class="secnum">23.1.5.2.2</span> %ArrayIteratorPrototype% [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-properties-of-array-iterator-instances" title="Properties of Array Iterator Instances"><span class="secnum">23.1.5.3</span> Properties of Array Iterator Instances</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-typedarray-objects" title="TypedArray Objects"><span class="secnum">23.2</span> TypedArray Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-%typedarray%-intrinsic-object" title="The %TypedArray% Intrinsic Object"><span class="secnum">23.2.1</span> The %TypedArray% Intrinsic Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%" title="%TypedArray% ( )"><span class="secnum">23.2.1.1</span> %TypedArray% ( )</a></li></ol></li><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-properties-of-the-%typedarray%-intrinsic-object" title="Properties of the %TypedArray% Intrinsic Object"><span class="secnum">23.2.2</span> Properties of the %TypedArray% Intrinsic Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.from" title="%TypedArray%.from ( source [ , mapper [ , thisArg ] ] )"><span class="secnum">23.2.2.1</span> %TypedArray%.from ( <var>source</var> [ , <var>mapper</var> [ , <var>thisArg</var> ] ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.of" title="%TypedArray%.of ( ...items )"><span class="secnum">23.2.2.2</span> %TypedArray%.of ( ...<var>items</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype" title="%TypedArray%.prototype"><span class="secnum">23.2.2.3</span> %TypedArray%.prototype</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-get-%typedarray%-%symbol.species%" title="get %TypedArray% [ %Symbol.species% ]"><span class="secnum">23.2.2.4</span> get %TypedArray% [ %Symbol.species% ]</a></li></ol></li><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-properties-of-the-%typedarrayprototype%-object" title="Properties of the %TypedArray% Prototype Object"><span class="secnum">23.2.3</span> Properties of the %TypedArray% Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.at" title="%TypedArray%.prototype.at ( index )"><span class="secnum">23.2.3.1</span> %TypedArray%.prototype.at ( <var>index</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-get-%typedarray%.prototype.buffer" title="get %TypedArray%.prototype.buffer"><span class="secnum">23.2.3.2</span> get %TypedArray%.prototype.buffer</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-get-%typedarray%.prototype.bytelength" title="get %TypedArray%.prototype.byteLength"><span class="secnum">23.2.3.3</span> get %TypedArray%.prototype.byteLength</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-get-%typedarray%.prototype.byteoffset" title="get %TypedArray%.prototype.byteOffset"><span class="secnum">23.2.3.4</span> get %TypedArray%.prototype.byteOffset</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.constructor" title="%TypedArray%.prototype.constructor"><span class="secnum">23.2.3.5</span> %TypedArray%.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.copywithin" title="%TypedArray%.prototype.copyWithin ( target, start [ , end ] )"><span class="secnum">23.2.3.6</span> %TypedArray%.prototype.copyWithin ( <var>target</var>, <var>start</var> [ , <var>end</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.entries" title="%TypedArray%.prototype.entries ( )"><span class="secnum">23.2.3.7</span> %TypedArray%.prototype.entries ( )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.every" title="%TypedArray%.prototype.every ( callback [ , thisArg ] )"><span class="secnum">23.2.3.8</span> %TypedArray%.prototype.every ( <var>callback</var> [ , <var>thisArg</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.fill" title="%TypedArray%.prototype.fill ( value [ , start [ , end ] ] )"><span class="secnum">23.2.3.9</span> %TypedArray%.prototype.fill ( <var>value</var> [ , <var>start</var> [ , <var>end</var> ] ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.filter" title="%TypedArray%.prototype.filter ( callback [ , thisArg ] )"><span class="secnum">23.2.3.10</span> %TypedArray%.prototype.filter ( <var>callback</var> [ , <var>thisArg</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.find" title="%TypedArray%.prototype.find ( predicate [ , thisArg ] )"><span class="secnum">23.2.3.11</span> %TypedArray%.prototype.find ( <var>predicate</var> [ , <var>thisArg</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.findindex" title="%TypedArray%.prototype.findIndex ( predicate [ , thisArg ] )"><span class="secnum">23.2.3.12</span> %TypedArray%.prototype.findIndex ( <var>predicate</var> [ , <var>thisArg</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.findlast" title="%TypedArray%.prototype.findLast ( predicate [ , thisArg ] )"><span class="secnum">23.2.3.13</span> %TypedArray%.prototype.findLast ( <var>predicate</var> [ , <var>thisArg</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.findlastindex" title="%TypedArray%.prototype.findLastIndex ( predicate [ , thisArg ] )"><span class="secnum">23.2.3.14</span> %TypedArray%.prototype.findLastIndex ( <var>predicate</var> [ , <var>thisArg</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.foreach" title="%TypedArray%.prototype.forEach ( callback [ , thisArg ] )"><span class="secnum">23.2.3.15</span> %TypedArray%.prototype.forEach ( <var>callback</var> [ , <var>thisArg</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.includes" title="%TypedArray%.prototype.includes ( searchElement [ , fromIndex ] )"><span class="secnum">23.2.3.16</span> %TypedArray%.prototype.includes ( <var>searchElement</var> [ , <var>fromIndex</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.indexof" title="%TypedArray%.prototype.indexOf ( searchElement [ , fromIndex ] )"><span class="secnum">23.2.3.17</span> %TypedArray%.prototype.indexOf ( <var>searchElement</var> [ , <var>fromIndex</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.join" title="%TypedArray%.prototype.join ( separator )"><span class="secnum">23.2.3.18</span> %TypedArray%.prototype.join ( <var>separator</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.keys" title="%TypedArray%.prototype.keys ( )"><span class="secnum">23.2.3.19</span> %TypedArray%.prototype.keys ( )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.lastindexof" title="%TypedArray%.prototype.lastIndexOf ( searchElement [ , fromIndex ] )"><span class="secnum">23.2.3.20</span> %TypedArray%.prototype.lastIndexOf ( <var>searchElement</var> [ , <var>fromIndex</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-get-%typedarray%.prototype.length" title="get %TypedArray%.prototype.length"><span class="secnum">23.2.3.21</span> get %TypedArray%.prototype.length</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.map" title="%TypedArray%.prototype.map ( callback [ , thisArg ] )"><span class="secnum">23.2.3.22</span> %TypedArray%.prototype.map ( <var>callback</var> [ , <var>thisArg</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.reduce" title="%TypedArray%.prototype.reduce ( callback [ , initialValue ] )"><span class="secnum">23.2.3.23</span> %TypedArray%.prototype.reduce ( <var>callback</var> [ , <var>initialValue</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.reduceright" title="%TypedArray%.prototype.reduceRight ( callback [ , initialValue ] )"><span class="secnum">23.2.3.24</span> %TypedArray%.prototype.reduceRight ( <var>callback</var> [ , <var>initialValue</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.reverse" title="%TypedArray%.prototype.reverse ( )"><span class="secnum">23.2.3.25</span> %TypedArray%.prototype.reverse ( )</a></li><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-%typedarray%.prototype.set" title="%TypedArray%.prototype.set ( source [ , offset ] )"><span class="secnum">23.2.3.26</span> %TypedArray%.prototype.set ( <var>source</var> [ , <var>offset</var> ] )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-settypedarrayfromarraylike" title="SetTypedArrayFromArrayLike ( target, targetOffset, source )"><span class="secnum">23.2.3.26.1</span> SetTypedArrayFromArrayLike ( <var>target</var>, <var>targetOffset</var>, <var>source</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-settypedarrayfromtypedarray" title="SetTypedArrayFromTypedArray ( target, targetOffset, source )"><span class="secnum">23.2.3.26.2</span> SetTypedArrayFromTypedArray ( <var>target</var>, <var>targetOffset</var>, <var>source</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.slice" title="%TypedArray%.prototype.slice ( start, end )"><span class="secnum">23.2.3.27</span> %TypedArray%.prototype.slice ( <var>start</var>, <var>end</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.some" title="%TypedArray%.prototype.some ( callback [ , thisArg ] )"><span class="secnum">23.2.3.28</span> %TypedArray%.prototype.some ( <var>callback</var> [ , <var>thisArg</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.sort" title="%TypedArray%.prototype.sort ( comparator )"><span class="secnum">23.2.3.29</span> %TypedArray%.prototype.sort ( <var>comparator</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.subarray" title="%TypedArray%.prototype.subarray ( start, end )"><span class="secnum">23.2.3.30</span> %TypedArray%.prototype.subarray ( <var>start</var>, <var>end</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.tolocalestring" title="%TypedArray%.prototype.toLocaleString ( [ reserved1 [ , reserved2 ] ] )"><span class="secnum">23.2.3.31</span> %TypedArray%.prototype.toLocaleString ( [ <var>reserved1</var> [ , <var>reserved2</var> ] ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.toreversed" title="%TypedArray%.prototype.toReversed ( )"><span class="secnum">23.2.3.32</span> %TypedArray%.prototype.toReversed ( )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.tosorted" title="%TypedArray%.prototype.toSorted ( comparator )"><span class="secnum">23.2.3.33</span> %TypedArray%.prototype.toSorted ( <var>comparator</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.tostring" title="%TypedArray%.prototype.toString ( )"><span class="secnum">23.2.3.34</span> %TypedArray%.prototype.toString ( )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.values" title="%TypedArray%.prototype.values ( )"><span class="secnum">23.2.3.35</span> %TypedArray%.prototype.values ( )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype.with" title="%TypedArray%.prototype.with ( index, value )"><span class="secnum">23.2.3.36</span> %TypedArray%.prototype.with ( <var>index</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-%typedarray%.prototype-%symbol.iterator%" title="%TypedArray%.prototype [ %Symbol.iterator% ] ( )"><span class="secnum">23.2.3.37</span> %TypedArray%.prototype [ %Symbol.iterator% ] ( )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-get-%typedarray%.prototype-%symbol.tostringtag%" title="get %TypedArray%.prototype [ %Symbol.toStringTag% ]"><span class="secnum">23.2.3.38</span> get %TypedArray%.prototype [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-abstract-operations-for-typedarray-objects" title="Abstract Operations for TypedArray Objects"><span class="secnum">23.2.4</span> Abstract Operations for TypedArray Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-typedarraycreatefromconstructor" title="TypedArrayCreateFromConstructor ( constructor, argumentList )"><span class="secnum">23.2.4.1</span> TypedArrayCreateFromConstructor ( <var>constructor</var>, <var>argumentList</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-typedarray-create-same-type" title="TypedArrayCreateSameType ( exemplar, length )"><span class="secnum">23.2.4.2</span> TypedArrayCreateSameType ( <var>exemplar</var>, <var>length</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#typedarray-species-create" title="TypedArraySpeciesCreate ( exemplar, argumentList )"><span class="secnum">23.2.4.3</span> TypedArraySpeciesCreate ( <var>exemplar</var>, <var>argumentList</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-validatetypedarray" title="ValidateTypedArray ( O, order )"><span class="secnum">23.2.4.4</span> ValidateTypedArray ( <var>O</var>, <var>order</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-typedarrayelementsize" title="TypedArrayElementSize ( O )"><span class="secnum">23.2.4.5</span> TypedArrayElementSize ( <var>O</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-typedarrayelementtype" title="TypedArrayElementType ( O )"><span class="secnum">23.2.4.6</span> TypedArrayElementType ( <var>O</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-comparetypedarrayelements" title="CompareTypedArrayElements ( x, y, comparator )"><span class="secnum">23.2.4.7</span> CompareTypedArrayElements ( <var>x</var>, <var>y</var>, <var>comparator</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-typedarray-constructors" title="The TypedArray Constructors"><span class="secnum">23.2.5</span> The <var>TypedArray</var> Constructors</a><ol class="toc"><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-typedarray" title="TypedArray ( ...args )"><span class="secnum">23.2.5.1</span> <var>TypedArray</var> ( ...<var>args</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-allocatetypedarray" title="AllocateTypedArray ( constructorName, newTarget, defaultProto [ , length ] )"><span class="secnum">23.2.5.1.1</span> AllocateTypedArray ( <var>constructorName</var>, <var>newTarget</var>, <var>defaultProto</var> [ , <var>length</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-initializetypedarrayfromtypedarray" title="InitializeTypedArrayFromTypedArray ( O, srcArray )"><span class="secnum">23.2.5.1.2</span> InitializeTypedArrayFromTypedArray ( <var>O</var>, <var>srcArray</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-initializetypedarrayfromarraybuffer" title="InitializeTypedArrayFromArrayBuffer ( O, buffer, byteOffset, length )"><span class="secnum">23.2.5.1.3</span> InitializeTypedArrayFromArrayBuffer ( <var>O</var>, <var>buffer</var>, <var>byteOffset</var>, <var>length</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-initializetypedarrayfromlist" title="InitializeTypedArrayFromList ( O, values )"><span class="secnum">23.2.5.1.4</span> InitializeTypedArrayFromList ( <var>O</var>, <var>values</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-initializetypedarrayfromarraylike" title="InitializeTypedArrayFromArrayLike ( O, arrayLike )"><span class="secnum">23.2.5.1.5</span> InitializeTypedArrayFromArrayLike ( <var>O</var>, <var>arrayLike</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-allocatetypedarraybuffer" title="AllocateTypedArrayBuffer ( O, length )"><span class="secnum">23.2.5.1.6</span> AllocateTypedArrayBuffer ( <var>O</var>, <var>length</var> )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-properties-of-the-typedarray-constructors" title="Properties of the TypedArray Constructors"><span class="secnum">23.2.6</span> Properties of the <var>TypedArray</var> Constructors</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-typedarray.bytes_per_element" title="TypedArray.BYTES_PER_ELEMENT"><span class="secnum">23.2.6.1</span> <var>TypedArray</var>.BYTES_PER_ELEMENT</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-typedarray.prototype" title="TypedArray.prototype"><span class="secnum">23.2.6.2</span> <var>TypedArray</var>.prototype</a></li></ol></li><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-properties-of-typedarray-prototype-objects" title="Properties of the TypedArray Prototype Objects"><span class="secnum">23.2.7</span> Properties of the <var>TypedArray</var> Prototype Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-typedarray.prototype.bytes_per_element" title="TypedArray.prototype.BYTES_PER_ELEMENT"><span class="secnum">23.2.7.1</span> <var>TypedArray</var>.prototype.BYTES_PER_ELEMENT</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-typedarray.prototype.constructor" title="TypedArray.prototype.constructor"><span class="secnum">23.2.7.2</span> <var>TypedArray</var>.prototype.constructor</a></li></ol></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-properties-of-typedarray-instances" title="Properties of TypedArray Instances"><span class="secnum">23.2.8</span> Properties of <var>TypedArray</var> Instances</a></li></ol></li><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-uint8array" title="Uint8Array Objects"><span class="secnum">23.3</span> Uint8Array Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-additional-properties-of-the-uint8array-constructor" title="Additional Properties of the Uint8Array Constructor"><span class="secnum">23.3.1</span> Additional Properties of the Uint8Array Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-uint8array.frombase64" title="Uint8Array.fromBase64 ( string [ , options ] )"><span class="secnum">23.3.1.1</span> Uint8Array.fromBase64 ( <var>string</var> [ , <var>options</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-uint8array.fromhex" title="Uint8Array.fromHex ( string )"><span class="secnum">23.3.1.2</span> Uint8Array.fromHex ( <var>string</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-additional-properties-of-the-uint8array-prototype-object" title="Additional Properties of the Uint8Array Prototype Object"><span class="secnum">23.3.2</span> Additional Properties of the Uint8Array Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-uint8array.prototype.setfrombase64" title="Uint8Array.prototype.setFromBase64 ( string [ , options ] )"><span class="secnum">23.3.2.1</span> Uint8Array.prototype.setFromBase64 ( <var>string</var> [ , <var>options</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-uint8array.prototype.setfromhex" title="Uint8Array.prototype.setFromHex ( string )"><span class="secnum">23.3.2.2</span> Uint8Array.prototype.setFromHex ( <var>string</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-uint8array.prototype.tobase64" title="Uint8Array.prototype.toBase64 ( [ options ] )"><span class="secnum">23.3.2.3</span> Uint8Array.prototype.toBase64 ( [ <var>options</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-uint8array.prototype.tohex" title="Uint8Array.prototype.toHex ( )"><span class="secnum">23.3.2.4</span> Uint8Array.prototype.toHex ( )</a></li></ol></li><li><span class="item-toggle">+</span><a href="indexed-collections.html#sec-abstract-operations-for-uint8array-objects" title="Abstract Operations for Uint8Array Objects"><span class="secnum">23.3.3</span> Abstract Operations for Uint8Array Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-validateuint8array" title="ValidateUint8Array ( ta )"><span class="secnum">23.3.3.1</span> ValidateUint8Array ( <var>ta</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-getuint8arraybytes" title="GetUint8ArrayBytes ( ta )"><span class="secnum">23.3.3.2</span> GetUint8ArrayBytes ( <var>ta</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-setuint8arraybytes" title="SetUint8ArrayBytes ( into, bytes )"><span class="secnum">23.3.3.3</span> SetUint8ArrayBytes ( <var>into</var>, <var>bytes</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-skipasciiwhitespace" title="SkipAsciiWhitespace ( string, index )"><span class="secnum">23.3.3.4</span> SkipAsciiWhitespace ( <var>string</var>, <var>index</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-decodefinalbase64chunk" title="DecodeFinalBase64Chunk ( chunk, throwOnExtraBits )"><span class="secnum">23.3.3.5</span> DecodeFinalBase64Chunk ( <var>chunk</var>, <var>throwOnExtraBits</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-decodefulllengthbase64chunk" title="DecodeFullLengthBase64Chunk ( chunk )"><span class="secnum">23.3.3.6</span> DecodeFullLengthBase64Chunk ( <var>chunk</var> )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-frombase64" title="FromBase64 ( string, alphabet, lastChunkHandling [ , maxLength ] )"><span class="secnum">23.3.3.7</span> FromBase64 ( <var>string</var>, <var>alphabet</var>, <var>lastChunkHandling</var> [ , <var>maxLength</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="indexed-collections.html#sec-fromhex" title="FromHex ( string [ , maxLength ] )"><span class="secnum">23.3.3.8</span> FromHex ( <var>string</var> [ , <var>maxLength</var> ] )</a></li></ol></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-keyed-collections" title="Keyed Collections"><span class="secnum">24</span> Keyed Collections</a><ol class="toc"><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-map-objects" title="Map Objects"><span class="secnum">24.1</span> Map Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-map-constructor" title="The Map Constructor"><span class="secnum">24.1.1</span> The Map Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-map-iterable" title="Map ( [ iterable ] )"><span class="secnum">24.1.1.1</span> Map ( [ <var>iterable</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-add-entries-from-iterable" title="AddEntriesFromIterable ( target, iterable, adder )"><span class="secnum">24.1.1.2</span> AddEntriesFromIterable ( <var>target</var>, <var>iterable</var>, <var>adder</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-properties-of-the-map-constructor" title="Properties of the Map Constructor"><span class="secnum">24.1.2</span> Properties of the Map Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-map.groupby" title="Map.groupBy ( items, callback )"><span class="secnum">24.1.2.1</span> Map.groupBy ( <var>items</var>, <var>callback</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-map.prototype" title="Map.prototype"><span class="secnum">24.1.2.2</span> Map.prototype</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-get-map-%symbol.species%" title="get Map [ %Symbol.species% ]"><span class="secnum">24.1.2.3</span> get Map [ %Symbol.species% ]</a></li></ol></li><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-properties-of-the-map-prototype-object" title="Properties of the Map Prototype Object"><span class="secnum">24.1.3</span> Properties of the Map Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-map.prototype.clear" title="Map.prototype.clear ( )"><span class="secnum">24.1.3.1</span> Map.prototype.clear ( )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-map.prototype.constructor" title="Map.prototype.constructor"><span class="secnum">24.1.3.2</span> Map.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-map.prototype.delete" title="Map.prototype.delete ( key )"><span class="secnum">24.1.3.3</span> Map.prototype.delete ( <var>key</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-map.prototype.entries" title="Map.prototype.entries ( )"><span class="secnum">24.1.3.4</span> Map.prototype.entries ( )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-map.prototype.foreach" title="Map.prototype.forEach ( callback [ , thisArg ] )"><span class="secnum">24.1.3.5</span> Map.prototype.forEach ( <var>callback</var> [ , <var>thisArg</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-map.prototype.get" title="Map.prototype.get ( key )"><span class="secnum">24.1.3.6</span> Map.prototype.get ( <var>key</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-map.prototype.getorinsert" title="Map.prototype.getOrInsert ( key, value )"><span class="secnum">24.1.3.7</span> Map.prototype.getOrInsert ( <var>key</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-map.prototype.getorinsertcomputed" title="Map.prototype.getOrInsertComputed ( key, callback )"><span class="secnum">24.1.3.8</span> Map.prototype.getOrInsertComputed ( <var>key</var>, <var>callback</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-map.prototype.has" title="Map.prototype.has ( key )"><span class="secnum">24.1.3.9</span> Map.prototype.has ( <var>key</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-map.prototype.keys" title="Map.prototype.keys ( )"><span class="secnum">24.1.3.10</span> Map.prototype.keys ( )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-map.prototype.set" title="Map.prototype.set ( key, value )"><span class="secnum">24.1.3.11</span> Map.prototype.set ( <var>key</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-get-map.prototype.size" title="get Map.prototype.size"><span class="secnum">24.1.3.12</span> get Map.prototype.size</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-map.prototype.values" title="Map.prototype.values ( )"><span class="secnum">24.1.3.13</span> Map.prototype.values ( )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-map.prototype-%symbol.iterator%" title="Map.prototype [ %Symbol.iterator% ] ( )"><span class="secnum">24.1.3.14</span> Map.prototype [ %Symbol.iterator% ] ( )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-map.prototype-%symbol.tostringtag%" title="Map.prototype [ %Symbol.toStringTag% ]"><span class="secnum">24.1.3.15</span> Map.prototype [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-properties-of-map-instances" title="Properties of Map Instances"><span class="secnum">24.1.4</span> Properties of Map Instances</a></li><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-map-iterator-objects" title="Map Iterator Objects"><span class="secnum">24.1.5</span> Map Iterator Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-createmapiterator" title="CreateMapIterator ( map, kind )"><span class="secnum">24.1.5.1</span> CreateMapIterator ( <var>map</var>, <var>kind</var> )</a></li><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-%mapiteratorprototype%-object" title="The %MapIteratorPrototype% Object"><span class="secnum">24.1.5.2</span> The %MapIteratorPrototype% Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-%mapiteratorprototype%.next" title="%MapIteratorPrototype%.next ( )"><span class="secnum">24.1.5.2.1</span> %MapIteratorPrototype%.next ( )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-%mapiteratorprototype%-%symbol.tostringtag%" title="%MapIteratorPrototype% [ %Symbol.toStringTag% ]"><span class="secnum">24.1.5.2.2</span> %MapIteratorPrototype% [ %Symbol.toStringTag% ]</a></li></ol></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-set-objects" title="Set Objects"><span class="secnum">24.2</span> Set Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-abstract-operations-for-set-objects" title="Abstract Operations For Set Objects"><span class="secnum">24.2.1</span> Abstract Operations For Set Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-set-records" title="Set Records"><span class="secnum">24.2.1.1</span> Set Records</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-getsetrecord" title="GetSetRecord ( obj )"><span class="secnum">24.2.1.2</span> GetSetRecord ( <var>obj</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-setdatahas" title="SetDataHas ( setData, value )"><span class="secnum">24.2.1.3</span> SetDataHas ( <var>setData</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-setdataindex" title="SetDataIndex ( setData, value )"><span class="secnum">24.2.1.4</span> SetDataIndex ( <var>setData</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-setdatasize" title="SetDataSize ( setData )"><span class="secnum">24.2.1.5</span> SetDataSize ( <var>setData</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-set-constructor" title="The Set Constructor"><span class="secnum">24.2.2</span> The Set Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-set-iterable" title="Set ( [ iterable ] )"><span class="secnum">24.2.2.1</span> Set ( [ <var>iterable</var> ] )</a></li></ol></li><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-properties-of-the-set-constructor" title="Properties of the Set Constructor"><span class="secnum">24.2.3</span> Properties of the Set Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-set.prototype" title="Set.prototype"><span class="secnum">24.2.3.1</span> Set.prototype</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-get-set-%symbol.species%" title="get Set [ %Symbol.species% ]"><span class="secnum">24.2.3.2</span> get Set [ %Symbol.species% ]</a></li></ol></li><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-properties-of-the-set-prototype-object" title="Properties of the Set Prototype Object"><span class="secnum">24.2.4</span> Properties of the Set Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-set.prototype.add" title="Set.prototype.add ( value )"><span class="secnum">24.2.4.1</span> Set.prototype.add ( <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-set.prototype.clear" title="Set.prototype.clear ( )"><span class="secnum">24.2.4.2</span> Set.prototype.clear ( )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-set.prototype.constructor" title="Set.prototype.constructor"><span class="secnum">24.2.4.3</span> Set.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-set.prototype.delete" title="Set.prototype.delete ( value )"><span class="secnum">24.2.4.4</span> Set.prototype.delete ( <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-set.prototype.difference" title="Set.prototype.difference ( other )"><span class="secnum">24.2.4.5</span> Set.prototype.difference ( <var>other</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-set.prototype.entries" title="Set.prototype.entries ( )"><span class="secnum">24.2.4.6</span> Set.prototype.entries ( )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-set.prototype.foreach" title="Set.prototype.forEach ( callback [ , thisArg ] )"><span class="secnum">24.2.4.7</span> Set.prototype.forEach ( <var>callback</var> [ , <var>thisArg</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-set.prototype.has" title="Set.prototype.has ( value )"><span class="secnum">24.2.4.8</span> Set.prototype.has ( <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-set.prototype.intersection" title="Set.prototype.intersection ( other )"><span class="secnum">24.2.4.9</span> Set.prototype.intersection ( <var>other</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-set.prototype.isdisjointfrom" title="Set.prototype.isDisjointFrom ( other )"><span class="secnum">24.2.4.10</span> Set.prototype.isDisjointFrom ( <var>other</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-set.prototype.issubsetof" title="Set.prototype.isSubsetOf ( other )"><span class="secnum">24.2.4.11</span> Set.prototype.isSubsetOf ( <var>other</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-set.prototype.issupersetof" title="Set.prototype.isSupersetOf ( other )"><span class="secnum">24.2.4.12</span> Set.prototype.isSupersetOf ( <var>other</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-set.prototype.keys" title="Set.prototype.keys ( )"><span class="secnum">24.2.4.13</span> Set.prototype.keys ( )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-get-set.prototype.size" title="get Set.prototype.size"><span class="secnum">24.2.4.14</span> get Set.prototype.size</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-set.prototype.symmetricdifference" title="Set.prototype.symmetricDifference ( other )"><span class="secnum">24.2.4.15</span> Set.prototype.symmetricDifference ( <var>other</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-set.prototype.union" title="Set.prototype.union ( other )"><span class="secnum">24.2.4.16</span> Set.prototype.union ( <var>other</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-set.prototype.values" title="Set.prototype.values ( )"><span class="secnum">24.2.4.17</span> Set.prototype.values ( )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-set.prototype-%symbol.iterator%" title="Set.prototype [ %Symbol.iterator% ] ( )"><span class="secnum">24.2.4.18</span> Set.prototype [ %Symbol.iterator% ] ( )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-set.prototype-%symbol.tostringtag%" title="Set.prototype [ %Symbol.toStringTag% ]"><span class="secnum">24.2.4.19</span> Set.prototype [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-properties-of-set-instances" title="Properties of Set Instances"><span class="secnum">24.2.5</span> Properties of Set Instances</a></li><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-set-iterator-objects" title="Set Iterator Objects"><span class="secnum">24.2.6</span> Set Iterator Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-createsetiterator" title="CreateSetIterator ( set, kind )"><span class="secnum">24.2.6.1</span> CreateSetIterator ( <var>set</var>, <var>kind</var> )</a></li><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-%setiteratorprototype%-object" title="The %SetIteratorPrototype% Object"><span class="secnum">24.2.6.2</span> The %SetIteratorPrototype% Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-%setiteratorprototype%.next" title="%SetIteratorPrototype%.next ( )"><span class="secnum">24.2.6.2.1</span> %SetIteratorPrototype%.next ( )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-%setiteratorprototype%-%symbol.tostringtag%" title="%SetIteratorPrototype% [ %Symbol.toStringTag% ]"><span class="secnum">24.2.6.2.2</span> %SetIteratorPrototype% [ %Symbol.toStringTag% ]</a></li></ol></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-weakmap-objects" title="WeakMap Objects"><span class="secnum">24.3</span> WeakMap Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-weakmap-constructor" title="The WeakMap Constructor"><span class="secnum">24.3.1</span> The WeakMap Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-weakmap-iterable" title="WeakMap ( [ iterable ] )"><span class="secnum">24.3.1.1</span> WeakMap ( [ <var>iterable</var> ] )</a></li></ol></li><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-properties-of-the-weakmap-constructor" title="Properties of the WeakMap Constructor"><span class="secnum">24.3.2</span> Properties of the WeakMap Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-weakmap.prototype" title="WeakMap.prototype"><span class="secnum">24.3.2.1</span> WeakMap.prototype</a></li></ol></li><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-properties-of-the-weakmap-prototype-object" title="Properties of the WeakMap Prototype Object"><span class="secnum">24.3.3</span> Properties of the WeakMap Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-weakmap.prototype.constructor" title="WeakMap.prototype.constructor"><span class="secnum">24.3.3.1</span> WeakMap.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-weakmap.prototype.delete" title="WeakMap.prototype.delete ( key )"><span class="secnum">24.3.3.2</span> WeakMap.prototype.delete ( <var>key</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-weakmap.prototype.get" title="WeakMap.prototype.get ( key )"><span class="secnum">24.3.3.3</span> WeakMap.prototype.get ( <var>key</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-weakmap.prototype.getorinsert" title="WeakMap.prototype.getOrInsert ( key, value )"><span class="secnum">24.3.3.4</span> WeakMap.prototype.getOrInsert ( <var>key</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-weakmap.prototype.getorinsertcomputed" title="WeakMap.prototype.getOrInsertComputed ( key, callback )"><span class="secnum">24.3.3.5</span> WeakMap.prototype.getOrInsertComputed ( <var>key</var>, <var>callback</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-weakmap.prototype.has" title="WeakMap.prototype.has ( key )"><span class="secnum">24.3.3.6</span> WeakMap.prototype.has ( <var>key</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-weakmap.prototype.set" title="WeakMap.prototype.set ( key, value )"><span class="secnum">24.3.3.7</span> WeakMap.prototype.set ( <var>key</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-weakmap.prototype-%symbol.tostringtag%" title="WeakMap.prototype [ %Symbol.toStringTag% ]"><span class="secnum">24.3.3.8</span> WeakMap.prototype [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-properties-of-weakmap-instances" title="Properties of WeakMap Instances"><span class="secnum">24.3.4</span> Properties of WeakMap Instances</a></li></ol></li><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-weakset-objects" title="WeakSet Objects"><span class="secnum">24.4</span> WeakSet Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-weakset-constructor" title="The WeakSet Constructor"><span class="secnum">24.4.1</span> The WeakSet Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-weakset-iterable" title="WeakSet ( [ iterable ] )"><span class="secnum">24.4.1.1</span> WeakSet ( [ <var>iterable</var> ] )</a></li></ol></li><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-properties-of-the-weakset-constructor" title="Properties of the WeakSet Constructor"><span class="secnum">24.4.2</span> Properties of the WeakSet Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-weakset.prototype" title="WeakSet.prototype"><span class="secnum">24.4.2.1</span> WeakSet.prototype</a></li></ol></li><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-properties-of-the-weakset-prototype-object" title="Properties of the WeakSet Prototype Object"><span class="secnum">24.4.3</span> Properties of the WeakSet Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-weakset.prototype.add" title="WeakSet.prototype.add ( value )"><span class="secnum">24.4.3.1</span> WeakSet.prototype.add ( <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-weakset.prototype.constructor" title="WeakSet.prototype.constructor"><span class="secnum">24.4.3.2</span> WeakSet.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-weakset.prototype.delete" title="WeakSet.prototype.delete ( value )"><span class="secnum">24.4.3.3</span> WeakSet.prototype.delete ( <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-weakset.prototype.has" title="WeakSet.prototype.has ( value )"><span class="secnum">24.4.3.4</span> WeakSet.prototype.has ( <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-weakset.prototype-%symbol.tostringtag%" title="WeakSet.prototype [ %Symbol.toStringTag% ]"><span class="secnum">24.4.3.5</span> WeakSet.prototype [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-properties-of-weakset-instances" title="Properties of WeakSet Instances"><span class="secnum">24.4.4</span> Properties of WeakSet Instances</a></li></ol></li><li><span class="item-toggle">+</span><a href="keyed-collections.html#sec-abstract-operations-for-keyed-collections" title="Abstract Operations for Keyed Collections"><span class="secnum">24.5</span> Abstract Operations for Keyed Collections</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="keyed-collections.html#sec-canonicalizekeyedcollectionkey" title="CanonicalizeKeyedCollectionKey ( key )"><span class="secnum">24.5.1</span> CanonicalizeKeyedCollectionKey ( <var>key</var> )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="structured-data.html#sec-structured-data" title="Structured Data"><span class="secnum">25</span> Structured Data</a><ol class="toc"><li><span class="item-toggle">+</span><a href="structured-data.html#sec-arraybuffer-objects" title="ArrayBuffer Objects"><span class="secnum">25.1</span> ArrayBuffer Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-arraybuffer-notation" title="Notation"><span class="secnum">25.1.1</span> Notation</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-fixed-length-and-resizable-arraybuffer-objects" title="Fixed-length and Resizable ArrayBuffer Objects"><span class="secnum">25.1.2</span> Fixed-length and Resizable ArrayBuffer Objects</a></li><li><span class="item-toggle">+</span><a href="structured-data.html#sec-abstract-operations-for-arraybuffer-objects" title="Abstract Operations For ArrayBuffer Objects"><span class="secnum">25.1.3</span> Abstract Operations For ArrayBuffer Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-allocatearraybuffer" title="AllocateArrayBuffer ( constructor, byteLength [ , maxByteLength ] )"><span class="secnum">25.1.3.1</span> AllocateArrayBuffer ( <var>constructor</var>, <var>byteLength</var> [ , <var>maxByteLength</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-arraybufferbytelength" title="ArrayBufferByteLength ( arrayBuffer, order )"><span class="secnum">25.1.3.2</span> ArrayBufferByteLength ( <var>arrayBuffer</var>, <var>order</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-arraybuffercopyanddetach" title="ArrayBufferCopyAndDetach ( arrayBuffer, newLength, preserveResizability )"><span class="secnum">25.1.3.3</span> ArrayBufferCopyAndDetach ( <var>arrayBuffer</var>, <var>newLength</var>, <var>preserveResizability</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-isdetachedbuffer" title="IsDetachedBuffer ( arrayBuffer )"><span class="secnum">25.1.3.4</span> IsDetachedBuffer ( <var>arrayBuffer</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-detacharraybuffer" title="DetachArrayBuffer ( arrayBuffer [ , key ] )"><span class="secnum">25.1.3.5</span> DetachArrayBuffer ( <var>arrayBuffer</var> [ , <var>key</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-clonearraybuffer" title="CloneArrayBuffer ( srcBuffer, srcByteOffset, srcLength )"><span class="secnum">25.1.3.6</span> CloneArrayBuffer ( <var>srcBuffer</var>, <var>srcByteOffset</var>, <var>srcLength</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-getarraybuffermaxbytelengthoption" title="GetArrayBufferMaxByteLengthOption ( options )"><span class="secnum">25.1.3.7</span> GetArrayBufferMaxByteLengthOption ( <var>options</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-hostresizearraybuffer" title="HostResizeArrayBuffer ( buffer, newByteLength )"><span class="secnum">25.1.3.8</span> HostResizeArrayBuffer ( <var>buffer</var>, <var>newByteLength</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-isfixedlengtharraybuffer" title="IsFixedLengthArrayBuffer ( arrayBuffer )"><span class="secnum">25.1.3.9</span> IsFixedLengthArrayBuffer ( <var>arrayBuffer</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-isunsignedelementtype" title="IsUnsignedElementType ( type )"><span class="secnum">25.1.3.10</span> IsUnsignedElementType ( <var>type</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-isunclampedintegerelementtype" title="IsUnclampedIntegerElementType ( type )"><span class="secnum">25.1.3.11</span> IsUnclampedIntegerElementType ( <var>type</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-isbigintelementtype" title="IsBigIntElementType ( type )"><span class="secnum">25.1.3.12</span> IsBigIntElementType ( <var>type</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-isnotearconfiguration" title="IsNoTearConfiguration ( type, order )"><span class="secnum">25.1.3.13</span> IsNoTearConfiguration ( <var>type</var>, <var>order</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-rawbytestonumeric" title="RawBytesToNumeric ( type, rawBytes, isLittleEndian )"><span class="secnum">25.1.3.14</span> RawBytesToNumeric ( <var>type</var>, <var>rawBytes</var>, <var>isLittleEndian</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-getrawbytesfromsharedblock" title="GetRawBytesFromSharedBlock ( block, byteIndex, type, isTypedArray, order )"><span class="secnum">25.1.3.15</span> GetRawBytesFromSharedBlock ( <var>block</var>, <var>byteIndex</var>, <var>type</var>, <var>isTypedArray</var>, <var>order</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-getvaluefrombuffer" title="GetValueFromBuffer ( arrayBuffer, byteIndex, type, isTypedArray, order [ , isLittleEndian ] )"><span class="secnum">25.1.3.16</span> GetValueFromBuffer ( <var>arrayBuffer</var>, <var>byteIndex</var>, <var>type</var>, <var>isTypedArray</var>, <var>order</var> [ , <var>isLittleEndian</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-numerictorawbytes" title="NumericToRawBytes ( type, value, isLittleEndian )"><span class="secnum">25.1.3.17</span> NumericToRawBytes ( <var>type</var>, <var>value</var>, <var>isLittleEndian</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-setvalueinbuffer" title="SetValueInBuffer ( arrayBuffer, byteIndex, type, value, isTypedArray, order [ , isLittleEndian ] )"><span class="secnum">25.1.3.18</span> SetValueInBuffer ( <var>arrayBuffer</var>, <var>byteIndex</var>, <var>type</var>, <var>value</var>, <var>isTypedArray</var>, <var>order</var> [ , <var>isLittleEndian</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-getmodifysetvalueinbuffer" title="GetModifySetValueInBuffer ( arrayBuffer, byteIndex, type, value, op )"><span class="secnum">25.1.3.19</span> GetModifySetValueInBuffer ( <var>arrayBuffer</var>, <var>byteIndex</var>, <var>type</var>, <var>value</var>, <var>op</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="structured-data.html#sec-arraybuffer-constructor" title="The ArrayBuffer Constructor"><span class="secnum">25.1.4</span> The ArrayBuffer Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-arraybuffer-length" title="ArrayBuffer ( length [ , options ] )"><span class="secnum">25.1.4.1</span> ArrayBuffer ( <var>length</var> [ , <var>options</var> ] )</a></li></ol></li><li><span class="item-toggle">+</span><a href="structured-data.html#sec-properties-of-the-arraybuffer-constructor" title="Properties of the ArrayBuffer Constructor"><span class="secnum">25.1.5</span> Properties of the ArrayBuffer Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-arraybuffer.isview" title="ArrayBuffer.isView ( arg )"><span class="secnum">25.1.5.1</span> ArrayBuffer.isView ( <var>arg</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-arraybuffer.prototype" title="ArrayBuffer.prototype"><span class="secnum">25.1.5.2</span> ArrayBuffer.prototype</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-get-arraybuffer-%symbol.species%" title="get ArrayBuffer [ %Symbol.species% ]"><span class="secnum">25.1.5.3</span> get ArrayBuffer [ %Symbol.species% ]</a></li></ol></li><li><span class="item-toggle">+</span><a href="structured-data.html#sec-properties-of-the-arraybuffer-prototype-object" title="Properties of the ArrayBuffer Prototype Object"><span class="secnum">25.1.6</span> Properties of the ArrayBuffer Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-get-arraybuffer.prototype.bytelength" title="get ArrayBuffer.prototype.byteLength"><span class="secnum">25.1.6.1</span> get ArrayBuffer.prototype.byteLength</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-arraybuffer.prototype.constructor" title="ArrayBuffer.prototype.constructor"><span class="secnum">25.1.6.2</span> ArrayBuffer.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-get-arraybuffer.prototype.detached" title="get ArrayBuffer.prototype.detached"><span class="secnum">25.1.6.3</span> get ArrayBuffer.prototype.detached</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-get-arraybuffer.prototype.maxbytelength" title="get ArrayBuffer.prototype.maxByteLength"><span class="secnum">25.1.6.4</span> get ArrayBuffer.prototype.maxByteLength</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-get-arraybuffer.prototype.resizable" title="get ArrayBuffer.prototype.resizable"><span class="secnum">25.1.6.5</span> get ArrayBuffer.prototype.resizable</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-arraybuffer.prototype.resize" title="ArrayBuffer.prototype.resize ( newLength )"><span class="secnum">25.1.6.6</span> ArrayBuffer.prototype.resize ( <var>newLength</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-arraybuffer.prototype.slice" title="ArrayBuffer.prototype.slice ( start, end )"><span class="secnum">25.1.6.7</span> ArrayBuffer.prototype.slice ( <var>start</var>, <var>end</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-arraybuffer.prototype.transfer" title="ArrayBuffer.prototype.transfer ( [ newLength ] )"><span class="secnum">25.1.6.8</span> ArrayBuffer.prototype.transfer ( [ <var>newLength</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-arraybuffer.prototype.transfertofixedlength" title="ArrayBuffer.prototype.transferToFixedLength ( [ newLength ] )"><span class="secnum">25.1.6.9</span> ArrayBuffer.prototype.transferToFixedLength ( [ <var>newLength</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-arraybuffer.prototype-%symbol.tostringtag%" title="ArrayBuffer.prototype [ %Symbol.toStringTag% ]"><span class="secnum">25.1.6.10</span> ArrayBuffer.prototype [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-properties-of-the-arraybuffer-instances" title="Properties of ArrayBuffer Instances"><span class="secnum">25.1.7</span> Properties of ArrayBuffer Instances</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-resizable-arraybuffer-guidelines" title="Resizable ArrayBuffer Guidelines"><span class="secnum">25.1.8</span> Resizable ArrayBuffer Guidelines</a></li></ol></li><li><span class="item-toggle">+</span><a href="structured-data.html#sec-sharedarraybuffer-objects" title="SharedArrayBuffer Objects"><span class="secnum">25.2</span> SharedArrayBuffer Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-fixed-length-and-growable-sharedarraybuffer-objects" title="Fixed-length and Growable SharedArrayBuffer Objects"><span class="secnum">25.2.1</span> Fixed-length and Growable SharedArrayBuffer Objects</a></li><li><span class="item-toggle">+</span><a href="structured-data.html#sec-abstract-operations-for-sharedarraybuffer-objects" title="Abstract Operations for SharedArrayBuffer Objects"><span class="secnum">25.2.2</span> Abstract Operations for SharedArrayBuffer Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-allocatesharedarraybuffer" title="AllocateSharedArrayBuffer ( constructor, byteLength [ , maxByteLength ] )"><span class="secnum">25.2.2.1</span> AllocateSharedArrayBuffer ( <var>constructor</var>, <var>byteLength</var> [ , <var>maxByteLength</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-issharedarraybuffer" title="IsSharedArrayBuffer ( obj )"><span class="secnum">25.2.2.2</span> IsSharedArrayBuffer ( <var>obj</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-isgrowablesharedarraybuffer" title="IsGrowableSharedArrayBuffer ( obj )"><span class="secnum">25.2.2.3</span> IsGrowableSharedArrayBuffer ( <var>obj</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-hostgrowsharedarraybuffer" title="HostGrowSharedArrayBuffer ( buffer, newByteLength )"><span class="secnum">25.2.2.4</span> HostGrowSharedArrayBuffer ( <var>buffer</var>, <var>newByteLength</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="structured-data.html#sec-sharedarraybuffer-constructor" title="The SharedArrayBuffer Constructor"><span class="secnum">25.2.3</span> The SharedArrayBuffer Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-sharedarraybuffer-length" title="SharedArrayBuffer ( length [ , options ] )"><span class="secnum">25.2.3.1</span> SharedArrayBuffer ( <var>length</var> [ , <var>options</var> ] )</a></li></ol></li><li><span class="item-toggle">+</span><a href="structured-data.html#sec-properties-of-the-sharedarraybuffer-constructor" title="Properties of the SharedArrayBuffer Constructor"><span class="secnum">25.2.4</span> Properties of the SharedArrayBuffer Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-sharedarraybuffer.prototype" title="SharedArrayBuffer.prototype"><span class="secnum">25.2.4.1</span> SharedArrayBuffer.prototype</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-sharedarraybuffer-%symbol.species%" title="get SharedArrayBuffer [ %Symbol.species% ]"><span class="secnum">25.2.4.2</span> get SharedArrayBuffer [ %Symbol.species% ]</a></li></ol></li><li><span class="item-toggle">+</span><a href="structured-data.html#sec-properties-of-the-sharedarraybuffer-prototype-object" title="Properties of the SharedArrayBuffer Prototype Object"><span class="secnum">25.2.5</span> Properties of the SharedArrayBuffer Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-get-sharedarraybuffer.prototype.bytelength" title="get SharedArrayBuffer.prototype.byteLength"><span class="secnum">25.2.5.1</span> get SharedArrayBuffer.prototype.byteLength</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-sharedarraybuffer.prototype.constructor" title="SharedArrayBuffer.prototype.constructor"><span class="secnum">25.2.5.2</span> SharedArrayBuffer.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-sharedarraybuffer.prototype.grow" title="SharedArrayBuffer.prototype.grow ( newLength )"><span class="secnum">25.2.5.3</span> SharedArrayBuffer.prototype.grow ( <var>newLength</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-get-sharedarraybuffer.prototype.growable" title="get SharedArrayBuffer.prototype.growable"><span class="secnum">25.2.5.4</span> get SharedArrayBuffer.prototype.growable</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-get-sharedarraybuffer.prototype.maxbytelength" title="get SharedArrayBuffer.prototype.maxByteLength"><span class="secnum">25.2.5.5</span> get SharedArrayBuffer.prototype.maxByteLength</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-sharedarraybuffer.prototype.slice" title="SharedArrayBuffer.prototype.slice ( start, end )"><span class="secnum">25.2.5.6</span> SharedArrayBuffer.prototype.slice ( <var>start</var>, <var>end</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-sharedarraybuffer.prototype-%symbol.tostringtag%" title="SharedArrayBuffer.prototype [ %Symbol.toStringTag% ]"><span class="secnum">25.2.5.7</span> SharedArrayBuffer.prototype [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-properties-of-the-sharedarraybuffer-instances" title="Properties of SharedArrayBuffer Instances"><span class="secnum">25.2.6</span> Properties of SharedArrayBuffer Instances</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-growable-sharedarraybuffer-guidelines" title="Growable SharedArrayBuffer Guidelines"><span class="secnum">25.2.7</span> Growable SharedArrayBuffer Guidelines</a></li></ol></li><li><span class="item-toggle">+</span><a href="structured-data.html#sec-dataview-objects" title="DataView Objects"><span class="secnum">25.3</span> DataView Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="structured-data.html#sec-abstract-operations-for-dataview-objects" title="Abstract Operations For DataView Objects"><span class="secnum">25.3.1</span> Abstract Operations For DataView Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview-with-buffer-witness-records" title="DataView With Buffer Witness Records"><span class="secnum">25.3.1.1</span> DataView With Buffer Witness Records</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-makedataviewwithbufferwitnessrecord" title="MakeDataViewWithBufferWitnessRecord ( obj, order )"><span class="secnum">25.3.1.2</span> MakeDataViewWithBufferWitnessRecord ( <var>obj</var>, <var>order</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-getviewbytelength" title="GetViewByteLength ( viewRecord )"><span class="secnum">25.3.1.3</span> GetViewByteLength ( <var>viewRecord</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-isviewoutofbounds" title="IsViewOutOfBounds ( viewRecord )"><span class="secnum">25.3.1.4</span> IsViewOutOfBounds ( <var>viewRecord</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-getviewvalue" title="GetViewValue ( view, requestIndex, isLittleEndian, type )"><span class="secnum">25.3.1.5</span> GetViewValue ( <var>view</var>, <var>requestIndex</var>, <var>isLittleEndian</var>, <var>type</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-setviewvalue" title="SetViewValue ( view, requestIndex, isLittleEndian, type, value )"><span class="secnum">25.3.1.6</span> SetViewValue ( <var>view</var>, <var>requestIndex</var>, <var>isLittleEndian</var>, <var>type</var>, <var>value</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="structured-data.html#sec-dataview-constructor" title="The DataView Constructor"><span class="secnum">25.3.2</span> The DataView Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview-buffer-byteoffset-bytelength" title="DataView ( buffer [ , byteOffset [ , byteLength ] ] )"><span class="secnum">25.3.2.1</span> DataView ( <var>buffer</var> [ , <var>byteOffset</var> [ , <var>byteLength</var> ] ] )</a></li></ol></li><li><span class="item-toggle">+</span><a href="structured-data.html#sec-properties-of-the-dataview-constructor" title="Properties of the DataView Constructor"><span class="secnum">25.3.3</span> Properties of the DataView Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype" title="DataView.prototype"><span class="secnum">25.3.3.1</span> DataView.prototype</a></li></ol></li><li><span class="item-toggle">+</span><a href="structured-data.html#sec-properties-of-the-dataview-prototype-object" title="Properties of the DataView Prototype Object"><span class="secnum">25.3.4</span> Properties of the DataView Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-get-dataview.prototype.buffer" title="get DataView.prototype.buffer"><span class="secnum">25.3.4.1</span> get DataView.prototype.buffer</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-get-dataview.prototype.bytelength" title="get DataView.prototype.byteLength"><span class="secnum">25.3.4.2</span> get DataView.prototype.byteLength</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-get-dataview.prototype.byteoffset" title="get DataView.prototype.byteOffset"><span class="secnum">25.3.4.3</span> get DataView.prototype.byteOffset</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.constructor" title="DataView.prototype.constructor"><span class="secnum">25.3.4.4</span> DataView.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.getbigint64" title="DataView.prototype.getBigInt64 ( byteOffset [ , littleEndian ] )"><span class="secnum">25.3.4.5</span> DataView.prototype.getBigInt64 ( <var>byteOffset</var> [ , <var>littleEndian</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.getbiguint64" title="DataView.prototype.getBigUint64 ( byteOffset [ , littleEndian ] )"><span class="secnum">25.3.4.6</span> DataView.prototype.getBigUint64 ( <var>byteOffset</var> [ , <var>littleEndian</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.getfloat16" title="DataView.prototype.getFloat16 ( byteOffset [ , littleEndian ] )"><span class="secnum">25.3.4.7</span> DataView.prototype.getFloat16 ( <var>byteOffset</var> [ , <var>littleEndian</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.getfloat32" title="DataView.prototype.getFloat32 ( byteOffset [ , littleEndian ] )"><span class="secnum">25.3.4.8</span> DataView.prototype.getFloat32 ( <var>byteOffset</var> [ , <var>littleEndian</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.getfloat64" title="DataView.prototype.getFloat64 ( byteOffset [ , littleEndian ] )"><span class="secnum">25.3.4.9</span> DataView.prototype.getFloat64 ( <var>byteOffset</var> [ , <var>littleEndian</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.getint8" title="DataView.prototype.getInt8 ( byteOffset )"><span class="secnum">25.3.4.10</span> DataView.prototype.getInt8 ( <var>byteOffset</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.getint16" title="DataView.prototype.getInt16 ( byteOffset [ , littleEndian ] )"><span class="secnum">25.3.4.11</span> DataView.prototype.getInt16 ( <var>byteOffset</var> [ , <var>littleEndian</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.getint32" title="DataView.prototype.getInt32 ( byteOffset [ , littleEndian ] )"><span class="secnum">25.3.4.12</span> DataView.prototype.getInt32 ( <var>byteOffset</var> [ , <var>littleEndian</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.getuint8" title="DataView.prototype.getUint8 ( byteOffset )"><span class="secnum">25.3.4.13</span> DataView.prototype.getUint8 ( <var>byteOffset</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.getuint16" title="DataView.prototype.getUint16 ( byteOffset [ , littleEndian ] )"><span class="secnum">25.3.4.14</span> DataView.prototype.getUint16 ( <var>byteOffset</var> [ , <var>littleEndian</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.getuint32" title="DataView.prototype.getUint32 ( byteOffset [ , littleEndian ] )"><span class="secnum">25.3.4.15</span> DataView.prototype.getUint32 ( <var>byteOffset</var> [ , <var>littleEndian</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.setbigint64" title="DataView.prototype.setBigInt64 ( byteOffset, value [ , littleEndian ] )"><span class="secnum">25.3.4.16</span> DataView.prototype.setBigInt64 ( <var>byteOffset</var>, <var>value</var> [ , <var>littleEndian</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.setbiguint64" title="DataView.prototype.setBigUint64 ( byteOffset, value [ , littleEndian ] )"><span class="secnum">25.3.4.17</span> DataView.prototype.setBigUint64 ( <var>byteOffset</var>, <var>value</var> [ , <var>littleEndian</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.setfloat16" title="DataView.prototype.setFloat16 ( byteOffset, value [ , littleEndian ] )"><span class="secnum">25.3.4.18</span> DataView.prototype.setFloat16 ( <var>byteOffset</var>, <var>value</var> [ , <var>littleEndian</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.setfloat32" title="DataView.prototype.setFloat32 ( byteOffset, value [ , littleEndian ] )"><span class="secnum">25.3.4.19</span> DataView.prototype.setFloat32 ( <var>byteOffset</var>, <var>value</var> [ , <var>littleEndian</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.setfloat64" title="DataView.prototype.setFloat64 ( byteOffset, value [ , littleEndian ] )"><span class="secnum">25.3.4.20</span> DataView.prototype.setFloat64 ( <var>byteOffset</var>, <var>value</var> [ , <var>littleEndian</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.setint8" title="DataView.prototype.setInt8 ( byteOffset, value )"><span class="secnum">25.3.4.21</span> DataView.prototype.setInt8 ( <var>byteOffset</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.setint16" title="DataView.prototype.setInt16 ( byteOffset, value [ , littleEndian ] )"><span class="secnum">25.3.4.22</span> DataView.prototype.setInt16 ( <var>byteOffset</var>, <var>value</var> [ , <var>littleEndian</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.setint32" title="DataView.prototype.setInt32 ( byteOffset, value [ , littleEndian ] )"><span class="secnum">25.3.4.23</span> DataView.prototype.setInt32 ( <var>byteOffset</var>, <var>value</var> [ , <var>littleEndian</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.setuint8" title="DataView.prototype.setUint8 ( byteOffset, value )"><span class="secnum">25.3.4.24</span> DataView.prototype.setUint8 ( <var>byteOffset</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.setuint16" title="DataView.prototype.setUint16 ( byteOffset, value [ , littleEndian ] )"><span class="secnum">25.3.4.25</span> DataView.prototype.setUint16 ( <var>byteOffset</var>, <var>value</var> [ , <var>littleEndian</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype.setuint32" title="DataView.prototype.setUint32 ( byteOffset, value [ , littleEndian ] )"><span class="secnum">25.3.4.26</span> DataView.prototype.setUint32 ( <var>byteOffset</var>, <var>value</var> [ , <var>littleEndian</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dataview.prototype-%symbol.tostringtag%" title="DataView.prototype [ %Symbol.toStringTag% ]"><span class="secnum">25.3.4.27</span> DataView.prototype [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-properties-of-dataview-instances" title="Properties of DataView Instances"><span class="secnum">25.3.5</span> Properties of DataView Instances</a></li></ol></li><li><span class="item-toggle">+</span><a href="structured-data.html#sec-atomics-object" title="The Atomics Object"><span class="secnum">25.4</span> The Atomics Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-waiter-record" title="Waiter Record"><span class="secnum">25.4.1</span> Waiter Record</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-waiterlist-records" title="WaiterList Records"><span class="secnum">25.4.2</span> WaiterList Records</a></li><li><span class="item-toggle">+</span><a href="structured-data.html#sec-abstract-operations-for-atomics" title="Abstract Operations for Atomics"><span class="secnum">25.4.3</span> Abstract Operations for Atomics</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-validateintegertypedarray" title="ValidateIntegerTypedArray ( typedArray, waitable )"><span class="secnum">25.4.3.1</span> ValidateIntegerTypedArray ( <var>typedArray</var>, <var>waitable</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-validateatomicaccess" title="ValidateAtomicAccess ( taRecord, requestIndex )"><span class="secnum">25.4.3.2</span> ValidateAtomicAccess ( <var>taRecord</var>, <var>requestIndex</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-validateatomicaccessonintegertypedarray" title="ValidateAtomicAccessOnIntegerTypedArray ( typedArray, requestIndex )"><span class="secnum">25.4.3.3</span> ValidateAtomicAccessOnIntegerTypedArray ( <var>typedArray</var>, <var>requestIndex</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-revalidateatomicaccess" title="RevalidateAtomicAccess ( typedArray, byteIndexInBuffer )"><span class="secnum">25.4.3.4</span> RevalidateAtomicAccess ( <var>typedArray</var>, <var>byteIndexInBuffer</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-getwaiterlist" title="GetWaiterList ( block, i )"><span class="secnum">25.4.3.5</span> GetWaiterList ( <var>block</var>, <var>i</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-entercriticalsection" title="EnterCriticalSection ( WL )"><span class="secnum">25.4.3.6</span> EnterCriticalSection ( <var>WL</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-leavecriticalsection" title="LeaveCriticalSection ( WL )"><span class="secnum">25.4.3.7</span> LeaveCriticalSection ( <var>WL</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-addwaiter" title="AddWaiter ( WL, waiterRecord )"><span class="secnum">25.4.3.8</span> AddWaiter ( <var>WL</var>, <var>waiterRecord</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-removewaiter" title="RemoveWaiter ( WL, waiterRecord )"><span class="secnum">25.4.3.9</span> RemoveWaiter ( <var>WL</var>, <var>waiterRecord</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-removewaiters" title="RemoveWaiters ( WL, c )"><span class="secnum">25.4.3.10</span> RemoveWaiters ( <var>WL</var>, <var>c</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-suspendthisagent" title="SuspendThisAgent ( WL, waiterRecord )"><span class="secnum">25.4.3.11</span> SuspendThisAgent ( <var>WL</var>, <var>waiterRecord</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-notifywaiter" title="NotifyWaiter ( WL, waiterRecord )"><span class="secnum">25.4.3.12</span> NotifyWaiter ( <var>WL</var>, <var>waiterRecord</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-enqueueresolveinagentjob" title="EnqueueResolveInAgentJob ( agentSignifier, promiseCapability, resolution )"><span class="secnum">25.4.3.13</span> EnqueueResolveInAgentJob ( <var>agentSignifier</var>, <var>promiseCapability</var>, <var>resolution</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-dowait" title="DoWait ( mode, typedArray, index, value, timeout )"><span class="secnum">25.4.3.14</span> DoWait ( <var>mode</var>, <var>typedArray</var>, <var>index</var>, <var>value</var>, <var>timeout</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-enqueueatomicswaitasynctimeoutjob" title="EnqueueAtomicsWaitAsyncTimeoutJob ( WL, waiterRecord )"><span class="secnum">25.4.3.15</span> EnqueueAtomicsWaitAsyncTimeoutJob ( <var>WL</var>, <var>waiterRecord</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-atomiccompareexchangeinsharedblock" title="AtomicCompareExchangeInSharedBlock ( block, byteIndexInBuffer, elementSize, expectedBytes, replacementBytes )"><span class="secnum">25.4.3.16</span> AtomicCompareExchangeInSharedBlock ( <var>block</var>, <var>byteIndexInBuffer</var>, <var>elementSize</var>, <var>expectedBytes</var>, <var>replacementBytes</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-atomicreadmodifywrite" title="AtomicReadModifyWrite ( typedArray, index, value, op )"><span class="secnum">25.4.3.17</span> AtomicReadModifyWrite ( <var>typedArray</var>, <var>index</var>, <var>value</var>, <var>op</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-bytelistbitwiseop" title="ByteListBitwiseOp ( op, xBytes, yBytes )"><span class="secnum">25.4.3.18</span> ByteListBitwiseOp ( <var>op</var>, <var>xBytes</var>, <var>yBytes</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-bytelistequal" title="ByteListEqual ( xBytes, yBytes )"><span class="secnum">25.4.3.19</span> ByteListEqual ( <var>xBytes</var>, <var>yBytes</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-atomics.add" title="Atomics.add ( typedArray, index, value )"><span class="secnum">25.4.4</span> Atomics.add ( <var>typedArray</var>, <var>index</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-atomics.and" title="Atomics.and ( typedArray, index, value )"><span class="secnum">25.4.5</span> Atomics.and ( <var>typedArray</var>, <var>index</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-atomics.compareexchange" title="Atomics.compareExchange ( typedArray, index, expectedValue, replacementValue )"><span class="secnum">25.4.6</span> Atomics.compareExchange ( <var>typedArray</var>, <var>index</var>, <var>expectedValue</var>, <var>replacementValue</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-atomics.exchange" title="Atomics.exchange ( typedArray, index, value )"><span class="secnum">25.4.7</span> Atomics.exchange ( <var>typedArray</var>, <var>index</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-atomics.islockfree" title="Atomics.isLockFree ( size )"><span class="secnum">25.4.8</span> Atomics.isLockFree ( <var>size</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-atomics.load" title="Atomics.load ( typedArray, index )"><span class="secnum">25.4.9</span> Atomics.load ( <var>typedArray</var>, <var>index</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-atomics.or" title="Atomics.or ( typedArray, index, value )"><span class="secnum">25.4.10</span> Atomics.or ( <var>typedArray</var>, <var>index</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-atomics.store" title="Atomics.store ( typedArray, index, value )"><span class="secnum">25.4.11</span> Atomics.store ( <var>typedArray</var>, <var>index</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-atomics.sub" title="Atomics.sub ( typedArray, index, value )"><span class="secnum">25.4.12</span> Atomics.sub ( <var>typedArray</var>, <var>index</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-atomics.wait" title="Atomics.wait ( typedArray, index, value, timeout )"><span class="secnum">25.4.13</span> Atomics.wait ( <var>typedArray</var>, <var>index</var>, <var>value</var>, <var>timeout</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-atomics.waitasync" title="Atomics.waitAsync ( typedArray, index, value, timeout )"><span class="secnum">25.4.14</span> Atomics.waitAsync ( <var>typedArray</var>, <var>index</var>, <var>value</var>, <var>timeout</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-atomics.notify" title="Atomics.notify ( typedArray, index, count )"><span class="secnum">25.4.15</span> Atomics.notify ( <var>typedArray</var>, <var>index</var>, <var>count</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-atomics.xor" title="Atomics.xor ( typedArray, index, value )"><span class="secnum">25.4.16</span> Atomics.xor ( <var>typedArray</var>, <var>index</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-atomics-%symbol.tostringtag%" title="Atomics [ %Symbol.toStringTag% ]"><span class="secnum">25.4.17</span> Atomics [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle">+</span><a href="structured-data.html#sec-json-object" title="The JSON Object"><span class="secnum">25.5</span> The JSON Object</a><ol class="toc"><li><span class="item-toggle">+</span><a href="structured-data.html#sec-json.parse" title="JSON.parse ( text [ , reviver ] )"><span class="secnum">25.5.1</span> JSON.parse ( <var>text</var> [ , <var>reviver</var> ] )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-ParseJSON" title="ParseJSON ( text )"><span class="secnum">25.5.1.1</span> ParseJSON ( <var>text</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-internalizejsonproperty" title="InternalizeJSONProperty ( holder, name, reviver )"><span class="secnum">25.5.1.2</span> InternalizeJSONProperty ( <var>holder</var>, <var>name</var>, <var>reviver</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="structured-data.html#sec-json.stringify" title="JSON.stringify ( value [ , replacer [ , space ] ] )"><span class="secnum">25.5.2</span> JSON.stringify ( <var>value</var> [ , <var>replacer</var> [ , <var>space</var> ] ] )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-json-serialization-record" title="JSON Serialization Record"><span class="secnum">25.5.2.1</span> JSON Serialization Record</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-serializejsonproperty" title="SerializeJSONProperty ( state, key, holder )"><span class="secnum">25.5.2.2</span> SerializeJSONProperty ( <var>state</var>, <var>key</var>, <var>holder</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-quotejsonstring" title="QuoteJSONString ( value )"><span class="secnum">25.5.2.3</span> QuoteJSONString ( <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-unicodeescape" title="UnicodeEscape ( C )"><span class="secnum">25.5.2.4</span> UnicodeEscape ( <var>C</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-serializejsonobject" title="SerializeJSONObject ( state, value )"><span class="secnum">25.5.2.5</span> SerializeJSONObject ( <var>state</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-serializejsonarray" title="SerializeJSONArray ( state, value )"><span class="secnum">25.5.2.6</span> SerializeJSONArray ( <var>state</var>, <var>value</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="structured-data.html#sec-json-%symbol.tostringtag%" title="JSON [ %Symbol.toStringTag% ]"><span class="secnum">25.5.3</span> JSON [ %Symbol.toStringTag% ]</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="managing-memory.html#sec-managing-memory" title="Managing Memory"><span class="secnum">26</span> Managing Memory</a><ol class="toc"><li><span class="item-toggle">+</span><a href="managing-memory.html#sec-weak-ref-objects" title="WeakRef Objects"><span class="secnum">26.1</span> WeakRef Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="managing-memory.html#sec-weak-ref-constructor" title="The WeakRef Constructor"><span class="secnum">26.1.1</span> The WeakRef Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="managing-memory.html#sec-weak-ref-target" title="WeakRef ( target )"><span class="secnum">26.1.1.1</span> WeakRef ( <var>target</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="managing-memory.html#sec-properties-of-the-weak-ref-constructor" title="Properties of the WeakRef Constructor"><span class="secnum">26.1.2</span> Properties of the WeakRef Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="managing-memory.html#sec-weak-ref.prototype" title="WeakRef.prototype"><span class="secnum">26.1.2.1</span> WeakRef.prototype</a></li></ol></li><li><span class="item-toggle">+</span><a href="managing-memory.html#sec-properties-of-the-weak-ref-prototype-object" title="Properties of the WeakRef Prototype Object"><span class="secnum">26.1.3</span> Properties of the WeakRef Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="managing-memory.html#sec-weak-ref.prototype.constructor" title="WeakRef.prototype.constructor"><span class="secnum">26.1.3.1</span> WeakRef.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="managing-memory.html#sec-weak-ref.prototype.deref" title="WeakRef.prototype.deref ( )"><span class="secnum">26.1.3.2</span> WeakRef.prototype.deref ( )</a></li><li><span class="item-toggle-none"></span><a href="managing-memory.html#sec-weak-ref.prototype-%symbol.tostringtag%" title="WeakRef.prototype [ %Symbol.toStringTag% ]"><span class="secnum">26.1.3.3</span> WeakRef.prototype [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle">+</span><a href="managing-memory.html#sec-weakref-abstract-operations" title="WeakRef Abstract Operations"><span class="secnum">26.1.4</span> WeakRef Abstract Operations</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="managing-memory.html#sec-weakrefderef" title="WeakRefDeref ( weakRef )"><span class="secnum">26.1.4.1</span> WeakRefDeref ( <var>weakRef</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="managing-memory.html#sec-properties-of-weak-ref-instances" title="Properties of WeakRef Instances"><span class="secnum">26.1.5</span> Properties of WeakRef Instances</a></li></ol></li><li><span class="item-toggle">+</span><a href="managing-memory.html#sec-finalization-registry-objects" title="FinalizationRegistry Objects"><span class="secnum">26.2</span> FinalizationRegistry Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="managing-memory.html#sec-finalization-registry-constructor" title="The FinalizationRegistry Constructor"><span class="secnum">26.2.1</span> The FinalizationRegistry Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="managing-memory.html#sec-finalization-registry-cleanup-callback" title="FinalizationRegistry ( cleanupCallback )"><span class="secnum">26.2.1.1</span> FinalizationRegistry ( <var>cleanupCallback</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="managing-memory.html#sec-properties-of-the-finalization-registry-constructor" title="Properties of the FinalizationRegistry Constructor"><span class="secnum">26.2.2</span> Properties of the FinalizationRegistry Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="managing-memory.html#sec-finalization-registry.prototype" title="FinalizationRegistry.prototype"><span class="secnum">26.2.2.1</span> FinalizationRegistry.prototype</a></li></ol></li><li><span class="item-toggle">+</span><a href="managing-memory.html#sec-properties-of-the-finalization-registry-prototype-object" title="Properties of the FinalizationRegistry Prototype Object"><span class="secnum">26.2.3</span> Properties of the FinalizationRegistry Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="managing-memory.html#sec-finalization-registry.prototype.constructor" title="FinalizationRegistry.prototype.constructor"><span class="secnum">26.2.3.1</span> FinalizationRegistry.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="managing-memory.html#sec-finalization-registry.prototype.register" title="FinalizationRegistry.prototype.register ( target, heldValue [ , unregisterToken ] )"><span class="secnum">26.2.3.2</span> FinalizationRegistry.prototype.register ( <var>target</var>, <var>heldValue</var> [ , <var>unregisterToken</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="managing-memory.html#sec-finalization-registry.prototype.unregister" title="FinalizationRegistry.prototype.unregister ( unregisterToken )"><span class="secnum">26.2.3.3</span> FinalizationRegistry.prototype.unregister ( <var>unregisterToken</var> )</a></li><li><span class="item-toggle-none"></span><a href="managing-memory.html#sec-finalization-registry.prototype-%symbol.tostringtag%" title="FinalizationRegistry.prototype [ %Symbol.toStringTag% ]"><span class="secnum">26.2.3.4</span> FinalizationRegistry.prototype [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle-none"></span><a href="managing-memory.html#sec-properties-of-finalization-registry-instances" title="Properties of FinalizationRegistry Instances"><span class="secnum">26.2.4</span> Properties of FinalizationRegistry Instances</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-control-abstraction-objects" title="Control Abstraction Objects"><span class="secnum">27</span> Control Abstraction Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-iteration" title="Iteration"><span class="secnum">27.1</span> Iteration</a><ol class="toc"><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-common-iteration-interfaces" title="Common Iteration Interfaces"><span class="secnum">27.1.1</span> Common Iteration Interfaces</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-iterable-interface" title="The Iterable Interface"><span class="secnum">27.1.1.1</span> The Iterable Interface</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-iterator-interface" title="The Iterator Interface"><span class="secnum">27.1.1.2</span> The Iterator Interface</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asynciterable-interface" title="The Async Iterable Interface"><span class="secnum">27.1.1.3</span> The Async Iterable Interface</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asynciterator-interface" title="The Async Iterator Interface"><span class="secnum">27.1.1.4</span> The Async Iterator Interface</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-iteratorresult-interface" title="The IteratorResult Interface"><span class="secnum">27.1.1.5</span> The IteratorResult Interface</a></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-iterator-helper-objects" title="Iterator Helper Objects"><span class="secnum">27.1.2</span> Iterator Helper Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-%iteratorhelperprototype%-object" title="The %IteratorHelperPrototype% Object"><span class="secnum">27.1.2.1</span> The %IteratorHelperPrototype% Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-%iteratorhelperprototype%.next" title="%IteratorHelperPrototype%.next ( )"><span class="secnum">27.1.2.1.1</span> %IteratorHelperPrototype%.next ( )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-%iteratorhelperprototype%.return" title="%IteratorHelperPrototype%.return ( )"><span class="secnum">27.1.2.1.2</span> %IteratorHelperPrototype%.return ( )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-%iteratorhelperprototype%-%symbol.tostringtag%" title="%IteratorHelperPrototype% [ %Symbol.toStringTag% ]"><span class="secnum">27.1.2.1.3</span> %IteratorHelperPrototype% [ %Symbol.toStringTag% ]</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-iterator-objects" title="Iterator Objects"><span class="secnum">27.1.3</span> Iterator Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-iterator-constructor" title="The Iterator Constructor"><span class="secnum">27.1.3.1</span> The Iterator Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-iterator" title="Iterator ( )"><span class="secnum">27.1.3.1.1</span> Iterator ( )</a></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-properties-of-the-iterator-constructor" title="Properties of the Iterator Constructor"><span class="secnum">27.1.3.2</span> Properties of the Iterator Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-iterator.concat" title="Iterator.concat ( ...items )"><span class="secnum">27.1.3.2.1</span> Iterator.concat ( ...<var>items</var> )</a></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-iterator.from" title="Iterator.from ( O )"><span class="secnum">27.1.3.2.2</span> Iterator.from ( <var>O</var> )</a><ol class="toc"><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-%wrapforvaliditeratorprototype%-object" title="The %WrapForValidIteratorPrototype% Object"><span class="secnum">27.1.3.2.2.1</span> The %WrapForValidIteratorPrototype% Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-%wrapforvaliditeratorprototype%.next" title="%WrapForValidIteratorPrototype%.next ( )"><span class="secnum">27.1.3.2.2.1.1</span> %WrapForValidIteratorPrototype%.next ( )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-%wrapforvaliditeratorprototype%.return" title="%WrapForValidIteratorPrototype%.return ( )"><span class="secnum">27.1.3.2.2.1.2</span> %WrapForValidIteratorPrototype%.return ( )</a></li></ol></li></ol></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-iterator.prototype" title="Iterator.prototype"><span class="secnum">27.1.3.2.3</span> Iterator.prototype</a></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-%iterator.prototype%-object" title="Properties of the Iterator Prototype Object"><span class="secnum">27.1.3.3</span> Properties of the Iterator Prototype Object</a><ol class="toc"><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-iterator.prototype.constructor" title="Iterator.prototype.constructor"><span class="secnum">27.1.3.3.1</span> Iterator.prototype.constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-get-iterator.prototype.constructor" title="get Iterator.prototype.constructor"><span class="secnum">27.1.3.3.1.1</span> get Iterator.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-set-iterator.prototype.constructor" title="set Iterator.prototype.constructor"><span class="secnum">27.1.3.3.1.2</span> set Iterator.prototype.constructor</a></li></ol></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-iterator.prototype.drop" title="Iterator.prototype.drop ( limit )"><span class="secnum">27.1.3.3.2</span> Iterator.prototype.drop ( <var>limit</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-iterator.prototype.every" title="Iterator.prototype.every ( predicate )"><span class="secnum">27.1.3.3.3</span> Iterator.prototype.every ( <var>predicate</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-iterator.prototype.filter" title="Iterator.prototype.filter ( predicate )"><span class="secnum">27.1.3.3.4</span> Iterator.prototype.filter ( <var>predicate</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-iterator.prototype.find" title="Iterator.prototype.find ( predicate )"><span class="secnum">27.1.3.3.5</span> Iterator.prototype.find ( <var>predicate</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-iterator.prototype.flatmap" title="Iterator.prototype.flatMap ( mapper )"><span class="secnum">27.1.3.3.6</span> Iterator.prototype.flatMap ( <var>mapper</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-iterator.prototype.foreach" title="Iterator.prototype.forEach ( procedure )"><span class="secnum">27.1.3.3.7</span> Iterator.prototype.forEach ( <var>procedure</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-iterator.prototype.map" title="Iterator.prototype.map ( mapper )"><span class="secnum">27.1.3.3.8</span> Iterator.prototype.map ( <var>mapper</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-iterator.prototype.reduce" title="Iterator.prototype.reduce ( reducer [ , initialValue ] )"><span class="secnum">27.1.3.3.9</span> Iterator.prototype.reduce ( <var>reducer</var> [ , <var>initialValue</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-iterator.prototype.some" title="Iterator.prototype.some ( predicate )"><span class="secnum">27.1.3.3.10</span> Iterator.prototype.some ( <var>predicate</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-iterator.prototype.take" title="Iterator.prototype.take ( limit )"><span class="secnum">27.1.3.3.11</span> Iterator.prototype.take ( <var>limit</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-iterator.prototype.toarray" title="Iterator.prototype.toArray ( )"><span class="secnum">27.1.3.3.12</span> Iterator.prototype.toArray ( )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-iterator.prototype-%symbol.iterator%" title="Iterator.prototype [ %Symbol.iterator% ] ( )"><span class="secnum">27.1.3.3.13</span> Iterator.prototype [ %Symbol.iterator% ] ( )</a></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-iterator.prototype-%symbol.tostringtag%" title="Iterator.prototype [ %Symbol.toStringTag% ]"><span class="secnum">27.1.3.3.14</span> Iterator.prototype [ %Symbol.toStringTag% ]</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-get-iterator.prototype-%symbol.tostringtag%" title="get Iterator.prototype [ %Symbol.toStringTag% ]"><span class="secnum">27.1.3.3.14.1</span> get Iterator.prototype [ %Symbol.toStringTag% ]</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-set-iterator.prototype-%symbol.tostringtag%" title="set Iterator.prototype [ %Symbol.toStringTag% ]"><span class="secnum">27.1.3.3.14.2</span> set Iterator.prototype [ %Symbol.toStringTag% ]</a></li></ol></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-asynciteratorprototype" title="The %AsyncIteratorPrototype% Object"><span class="secnum">27.1.4</span> The %AsyncIteratorPrototype% Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-%asynciteratorprototype%-%symbol.asynciterator%" title="%AsyncIteratorPrototype% [ %Symbol.asyncIterator% ] ( )"><span class="secnum">27.1.4.1</span> %AsyncIteratorPrototype% [ %Symbol.asyncIterator% ] ( )</a></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-async-from-sync-iterator-objects" title="Async-from-Sync Iterator Objects"><span class="secnum">27.1.5</span> Async-from-Sync Iterator Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-createasyncfromsynciterator" title="CreateAsyncFromSyncIterator ( syncIteratorRecord )"><span class="secnum">27.1.5.1</span> CreateAsyncFromSyncIterator ( <var>syncIteratorRecord</var> )</a></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-%asyncfromsynciteratorprototype%-object" title="The %AsyncFromSyncIteratorPrototype% Object"><span class="secnum">27.1.5.2</span> The %AsyncFromSyncIteratorPrototype% Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-%asyncfromsynciteratorprototype%.next" title="%AsyncFromSyncIteratorPrototype%.next ( [ value ] )"><span class="secnum">27.1.5.2.1</span> %AsyncFromSyncIteratorPrototype%.next ( [ <var>value</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-%asyncfromsynciteratorprototype%.return" title="%AsyncFromSyncIteratorPrototype%.return ( [ value ] )"><span class="secnum">27.1.5.2.2</span> %AsyncFromSyncIteratorPrototype%.return ( [ <var>value</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-%asyncfromsynciteratorprototype%.throw" title="%AsyncFromSyncIteratorPrototype%.throw ( [ value ] )"><span class="secnum">27.1.5.2.3</span> %AsyncFromSyncIteratorPrototype%.throw ( [ <var>value</var> ] )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-properties-of-async-from-sync-iterator-instances" title="Properties of Async-from-Sync Iterator Instances"><span class="secnum">27.1.5.3</span> Properties of Async-from-Sync Iterator Instances</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncfromsynciteratorcontinuation" title="AsyncFromSyncIteratorContinuation ( result, promiseCapability, syncIteratorRecord, closeOnRejection )"><span class="secnum">27.1.5.4</span> AsyncFromSyncIteratorContinuation ( <var>result</var>, <var>promiseCapability</var>, <var>syncIteratorRecord</var>, <var>closeOnRejection</var> )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-promise-objects" title="Promise Objects"><span class="secnum">27.2</span> Promise Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-promise-abstract-operations" title="Promise Abstract Operations"><span class="secnum">27.2.1</span> Promise Abstract Operations</a><ol class="toc"><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-promisecapability-records" title="PromiseCapability Records"><span class="secnum">27.2.1.1</span> PromiseCapability Records</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-ifabruptrejectpromise" title="IfAbruptRejectPromise ( value, capability )"><span class="secnum">27.2.1.1.1</span> IfAbruptRejectPromise ( <var>value</var>, <var>capability</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-promisereaction-records" title="PromiseReaction Records"><span class="secnum">27.2.1.2</span> PromiseReaction Records</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-createresolvingfunctions" title="CreateResolvingFunctions ( toResolve )"><span class="secnum">27.2.1.3</span> CreateResolvingFunctions ( <var>toResolve</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-fulfillpromise" title="FulfillPromise ( promise, value )"><span class="secnum">27.2.1.4</span> FulfillPromise ( <var>promise</var>, <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-newpromisecapability" title="NewPromiseCapability ( C )"><span class="secnum">27.2.1.5</span> NewPromiseCapability ( <var>C</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-ispromise" title="IsPromise ( x )"><span class="secnum">27.2.1.6</span> IsPromise ( <var>x</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-rejectpromise" title="RejectPromise ( promise, reason )"><span class="secnum">27.2.1.7</span> RejectPromise ( <var>promise</var>, <var>reason</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-triggerpromisereactions" title="TriggerPromiseReactions ( reactions, argument )"><span class="secnum">27.2.1.8</span> TriggerPromiseReactions ( <var>reactions</var>, <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-host-promise-rejection-tracker" title="HostPromiseRejectionTracker ( promise, operation )"><span class="secnum">27.2.1.9</span> HostPromiseRejectionTracker ( <var>promise</var>, <var>operation</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-promise-jobs" title="Promise Jobs"><span class="secnum">27.2.2</span> Promise Jobs</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-newpromisereactionjob" title="NewPromiseReactionJob ( reaction, argument )"><span class="secnum">27.2.2.1</span> NewPromiseReactionJob ( <var>reaction</var>, <var>argument</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-newpromiseresolvethenablejob" title="NewPromiseResolveThenableJob ( promiseToResolve, thenable, then )"><span class="secnum">27.2.2.2</span> NewPromiseResolveThenableJob ( <var>promiseToResolve</var>, <var>thenable</var>, <var>then</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-promise-constructor" title="The Promise Constructor"><span class="secnum">27.2.3</span> The Promise Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-promise-executor" title="Promise ( executor )"><span class="secnum">27.2.3.1</span> Promise ( <var>executor</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-properties-of-the-promise-constructor" title="Properties of the Promise Constructor"><span class="secnum">27.2.4</span> Properties of the Promise Constructor</a><ol class="toc"><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-promise.all" title="Promise.all ( iterable )"><span class="secnum">27.2.4.1</span> Promise.all ( <var>iterable</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-getpromiseresolve" title="GetPromiseResolve ( promiseConstructor )"><span class="secnum">27.2.4.1.1</span> GetPromiseResolve ( <var>promiseConstructor</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-performpromiseall" title="PerformPromiseAll ( iteratorRecord, constructor, resultCapability, promiseResolve )"><span class="secnum">27.2.4.1.2</span> PerformPromiseAll ( <var>iteratorRecord</var>, <var>constructor</var>, <var>resultCapability</var>, <var>promiseResolve</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-promise.allsettled" title="Promise.allSettled ( iterable )"><span class="secnum">27.2.4.2</span> Promise.allSettled ( <var>iterable</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-performpromiseallsettled" title="PerformPromiseAllSettled ( iteratorRecord, constructor, resultCapability, promiseResolve )"><span class="secnum">27.2.4.2.1</span> PerformPromiseAllSettled ( <var>iteratorRecord</var>, <var>constructor</var>, <var>resultCapability</var>, <var>promiseResolve</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-promise.any" title="Promise.any ( iterable )"><span class="secnum">27.2.4.3</span> Promise.any ( <var>iterable</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-performpromiseany" title="PerformPromiseAny ( iteratorRecord, constructor, resultCapability, promiseResolve )"><span class="secnum">27.2.4.3.1</span> PerformPromiseAny ( <var>iteratorRecord</var>, <var>constructor</var>, <var>resultCapability</var>, <var>promiseResolve</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-promise.prototype" title="Promise.prototype"><span class="secnum">27.2.4.4</span> Promise.prototype</a></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-promise.race" title="Promise.race ( iterable )"><span class="secnum">27.2.4.5</span> Promise.race ( <var>iterable</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-performpromiserace" title="PerformPromiseRace ( iteratorRecord, constructor, resultCapability, promiseResolve )"><span class="secnum">27.2.4.5.1</span> PerformPromiseRace ( <var>iteratorRecord</var>, <var>constructor</var>, <var>resultCapability</var>, <var>promiseResolve</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-promise.reject" title="Promise.reject ( r )"><span class="secnum">27.2.4.6</span> Promise.reject ( <var>r</var> )</a></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-promise.resolve" title="Promise.resolve ( x )"><span class="secnum">27.2.4.7</span> Promise.resolve ( <var>x</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-promise-resolve" title="PromiseResolve ( C, x )"><span class="secnum">27.2.4.7.1</span> PromiseResolve ( <var>C</var>, <var>x</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-promise.try" title="Promise.try ( callback, ...args )"><span class="secnum">27.2.4.8</span> Promise.try ( <var>callback</var>, ...<var>args</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-promise.withResolvers" title="Promise.withResolvers ( )"><span class="secnum">27.2.4.9</span> Promise.withResolvers ( )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-get-promise-%symbol.species%" title="get Promise [ %Symbol.species% ]"><span class="secnum">27.2.4.10</span> get Promise [ %Symbol.species% ]</a></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-properties-of-the-promise-prototype-object" title="Properties of the Promise Prototype Object"><span class="secnum">27.2.5</span> Properties of the Promise Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-promise.prototype.catch" title="Promise.prototype.catch ( onRejected )"><span class="secnum">27.2.5.1</span> Promise.prototype.catch ( <var>onRejected</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-promise.prototype.constructor" title="Promise.prototype.constructor"><span class="secnum">27.2.5.2</span> Promise.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-promise.prototype.finally" title="Promise.prototype.finally ( onFinally )"><span class="secnum">27.2.5.3</span> Promise.prototype.finally ( <var>onFinally</var> )</a></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-promise.prototype.then" title="Promise.prototype.then ( onFulfilled, onRejected )"><span class="secnum">27.2.5.4</span> Promise.prototype.then ( <var>onFulfilled</var>, <var>onRejected</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-performpromisethen" title="PerformPromiseThen ( promise, onFulfilled, onRejected [ , resultCapability ] )"><span class="secnum">27.2.5.4.1</span> PerformPromiseThen ( <var>promise</var>, <var>onFulfilled</var>, <var>onRejected</var> [ , <var>resultCapability</var> ] )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-promise.prototype-%symbol.tostringtag%" title="Promise.prototype [ %Symbol.toStringTag% ]"><span class="secnum">27.2.5.5</span> Promise.prototype [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-properties-of-promise-instances" title="Properties of Promise Instances"><span class="secnum">27.2.6</span> Properties of Promise Instances</a></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-generatorfunction-objects" title="GeneratorFunction Objects"><span class="secnum">27.3</span> GeneratorFunction Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-generatorfunction-constructor" title="The GeneratorFunction Constructor"><span class="secnum">27.3.1</span> The GeneratorFunction Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-generatorfunction" title="GeneratorFunction ( ...parameterArgs, bodyArg )"><span class="secnum">27.3.1.1</span> GeneratorFunction ( ...<var>parameterArgs</var>, <var>bodyArg</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-properties-of-the-generatorfunction-constructor" title="Properties of the GeneratorFunction Constructor"><span class="secnum">27.3.2</span> Properties of the GeneratorFunction Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-generatorfunction.prototype" title="GeneratorFunction.prototype"><span class="secnum">27.3.2.1</span> GeneratorFunction.prototype</a></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-properties-of-the-generatorfunction-prototype-object" title="Properties of the GeneratorFunction Prototype Object"><span class="secnum">27.3.3</span> Properties of the GeneratorFunction Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-generatorfunction.prototype.constructor" title="GeneratorFunction.prototype.constructor"><span class="secnum">27.3.3.1</span> GeneratorFunction.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-generatorfunction.prototype.prototype" title="GeneratorFunction.prototype.prototype"><span class="secnum">27.3.3.2</span> GeneratorFunction.prototype.prototype</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-generatorfunction.prototype-%symbol.tostringtag%" title="GeneratorFunction.prototype [ %Symbol.toStringTag% ]"><span class="secnum">27.3.3.3</span> GeneratorFunction.prototype [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-generatorfunction-instances" title="GeneratorFunction Instances"><span class="secnum">27.3.4</span> GeneratorFunction Instances</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-generatorfunction-instances-length" title="length"><span class="secnum">27.3.4.1</span> length</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-generatorfunction-instances-name" title="name"><span class="secnum">27.3.4.2</span> name</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-generatorfunction-instances-prototype" title="prototype"><span class="secnum">27.3.4.3</span> prototype</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-asyncgeneratorfunction-objects" title="AsyncGeneratorFunction Objects"><span class="secnum">27.4</span> AsyncGeneratorFunction Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-asyncgeneratorfunction-constructor" title="The AsyncGeneratorFunction Constructor"><span class="secnum">27.4.1</span> The AsyncGeneratorFunction Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgeneratorfunction" title="AsyncGeneratorFunction ( ...parameterArgs, bodyArg )"><span class="secnum">27.4.1.1</span> AsyncGeneratorFunction ( ...<var>parameterArgs</var>, <var>bodyArg</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-properties-of-asyncgeneratorfunction" title="Properties of the AsyncGeneratorFunction Constructor"><span class="secnum">27.4.2</span> Properties of the AsyncGeneratorFunction Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgeneratorfunction-prototype" title="AsyncGeneratorFunction.prototype"><span class="secnum">27.4.2.1</span> AsyncGeneratorFunction.prototype</a></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-properties-of-asyncgeneratorfunction-prototype" title="Properties of the AsyncGeneratorFunction Prototype Object"><span class="secnum">27.4.3</span> Properties of the AsyncGeneratorFunction Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgeneratorfunction-prototype-constructor" title="AsyncGeneratorFunction.prototype.constructor"><span class="secnum">27.4.3.1</span> AsyncGeneratorFunction.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgeneratorfunction-prototype-prototype" title="AsyncGeneratorFunction.prototype.prototype"><span class="secnum">27.4.3.2</span> AsyncGeneratorFunction.prototype.prototype</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgeneratorfunction-prototype-%symbol.tostringtag%" title="AsyncGeneratorFunction.prototype [ %Symbol.toStringTag% ]"><span class="secnum">27.4.3.3</span> AsyncGeneratorFunction.prototype [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-asyncgeneratorfunction-instances" title="AsyncGeneratorFunction Instances"><span class="secnum">27.4.4</span> AsyncGeneratorFunction Instances</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgeneratorfunction-instance-length" title="length"><span class="secnum">27.4.4.1</span> length</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgeneratorfunction-instance-name" title="name"><span class="secnum">27.4.4.2</span> name</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgeneratorfunction-instance-prototype" title="prototype"><span class="secnum">27.4.4.3</span> prototype</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-generator-objects" title="Generator Objects"><span class="secnum">27.5</span> Generator Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-properties-of-generator-prototype" title="The %GeneratorPrototype% Object"><span class="secnum">27.5.1</span> The %GeneratorPrototype% Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-generator.prototype.constructor" title="%GeneratorPrototype%.constructor"><span class="secnum">27.5.1.1</span> %GeneratorPrototype%.constructor</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-generator.prototype.next" title="%GeneratorPrototype%.next ( value )"><span class="secnum">27.5.1.2</span> %GeneratorPrototype%.next ( <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-generator.prototype.return" title="%GeneratorPrototype%.return ( value )"><span class="secnum">27.5.1.3</span> %GeneratorPrototype%.return ( <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-generator.prototype.throw" title="%GeneratorPrototype%.throw ( exception )"><span class="secnum">27.5.1.4</span> %GeneratorPrototype%.throw ( <var>exception</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-generator.prototype-%symbol.tostringtag%" title="%GeneratorPrototype% [ %Symbol.toStringTag% ]"><span class="secnum">27.5.1.5</span> %GeneratorPrototype% [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-properties-of-generator-instances" title="Properties of Generator Instances"><span class="secnum">27.5.2</span> Properties of Generator Instances</a></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-generator-abstract-operations" title="Generator Abstract Operations"><span class="secnum">27.5.3</span> Generator Abstract Operations</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-generatorstart" title="GeneratorStart ( generator, generatorBody )"><span class="secnum">27.5.3.1</span> GeneratorStart ( <var>generator</var>, <var>generatorBody</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-generatorvalidate" title="GeneratorValidate ( generator, generatorBrand )"><span class="secnum">27.5.3.2</span> GeneratorValidate ( <var>generator</var>, <var>generatorBrand</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-generatorresume" title="GeneratorResume ( generator, value, generatorBrand )"><span class="secnum">27.5.3.3</span> GeneratorResume ( <var>generator</var>, <var>value</var>, <var>generatorBrand</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-generatorresumeabrupt" title="GeneratorResumeAbrupt ( generator, abruptCompletion, generatorBrand )"><span class="secnum">27.5.3.4</span> GeneratorResumeAbrupt ( <var>generator</var>, <var>abruptCompletion</var>, <var>generatorBrand</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-getgeneratorkind" title="GetGeneratorKind ( )"><span class="secnum">27.5.3.5</span> GetGeneratorKind ( )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-generatoryield" title="GeneratorYield ( iteratorResult )"><span class="secnum">27.5.3.6</span> GeneratorYield ( <var>iteratorResult</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-yield" title="Yield ( value )"><span class="secnum">27.5.3.7</span> Yield ( <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-createiteratorfromclosure" title="CreateIteratorFromClosure ( closure, generatorBrand, generatorPrototype [ , extraSlots ] )"><span class="secnum">27.5.3.8</span> CreateIteratorFromClosure ( <var>closure</var>, <var>generatorBrand</var>, <var>generatorPrototype</var> [ , <var>extraSlots</var> ] )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-asyncgenerator-objects" title="AsyncGenerator Objects"><span class="secnum">27.6</span> AsyncGenerator Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-properties-of-asyncgenerator-prototype" title="The %AsyncGeneratorPrototype% Object"><span class="secnum">27.6.1</span> The %AsyncGeneratorPrototype% Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgenerator-prototype-constructor" title="%AsyncGeneratorPrototype%.constructor"><span class="secnum">27.6.1.1</span> %AsyncGeneratorPrototype%.constructor</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgenerator-prototype-next" title="%AsyncGeneratorPrototype%.next ( value )"><span class="secnum">27.6.1.2</span> %AsyncGeneratorPrototype%.next ( <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgenerator-prototype-return" title="%AsyncGeneratorPrototype%.return ( value )"><span class="secnum">27.6.1.3</span> %AsyncGeneratorPrototype%.return ( <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgenerator-prototype-throw" title="%AsyncGeneratorPrototype%.throw ( exception )"><span class="secnum">27.6.1.4</span> %AsyncGeneratorPrototype%.throw ( <var>exception</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgenerator-prototype-%symbol.tostringtag%" title="%AsyncGeneratorPrototype% [ %Symbol.toStringTag% ]"><span class="secnum">27.6.1.5</span> %AsyncGeneratorPrototype% [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-properties-of-asyncgenerator-intances" title="Properties of AsyncGenerator Instances"><span class="secnum">27.6.2</span> Properties of AsyncGenerator Instances</a></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-asyncgenerator-abstract-operations" title="AsyncGenerator Abstract Operations"><span class="secnum">27.6.3</span> AsyncGenerator Abstract Operations</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgeneratorrequest-records" title="AsyncGeneratorRequest Records"><span class="secnum">27.6.3.1</span> AsyncGeneratorRequest Records</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgeneratorstart" title="AsyncGeneratorStart ( generator, generatorBody )"><span class="secnum">27.6.3.2</span> AsyncGeneratorStart ( <var>generator</var>, <var>generatorBody</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgeneratorvalidate" title="AsyncGeneratorValidate ( generator, generatorBrand )"><span class="secnum">27.6.3.3</span> AsyncGeneratorValidate ( <var>generator</var>, <var>generatorBrand</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgeneratorenqueue" title="AsyncGeneratorEnqueue ( generator, completion, promiseCapability )"><span class="secnum">27.6.3.4</span> AsyncGeneratorEnqueue ( <var>generator</var>, <var>completion</var>, <var>promiseCapability</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgeneratorcompletestep" title="AsyncGeneratorCompleteStep ( generator, completion, done [ , realm ] )"><span class="secnum">27.6.3.5</span> AsyncGeneratorCompleteStep ( <var>generator</var>, <var>completion</var>, <var>done</var> [ , <var>realm</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgeneratorresume" title="AsyncGeneratorResume ( generator, completion )"><span class="secnum">27.6.3.6</span> AsyncGeneratorResume ( <var>generator</var>, <var>completion</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgeneratorunwrapyieldresumption" title="AsyncGeneratorUnwrapYieldResumption ( resumptionValue )"><span class="secnum">27.6.3.7</span> AsyncGeneratorUnwrapYieldResumption ( <var>resumptionValue</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgeneratoryield" title="AsyncGeneratorYield ( value )"><span class="secnum">27.6.3.8</span> AsyncGeneratorYield ( <var>value</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgeneratorawaitreturn" title="AsyncGeneratorAwaitReturn ( generator )"><span class="secnum">27.6.3.9</span> AsyncGeneratorAwaitReturn ( <var>generator</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncgeneratordrainqueue" title="AsyncGeneratorDrainQueue ( generator )"><span class="secnum">27.6.3.10</span> AsyncGeneratorDrainQueue ( <var>generator</var> )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-async-function-objects" title="AsyncFunction Objects"><span class="secnum">27.7</span> AsyncFunction Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-async-function-constructor" title="The AsyncFunction Constructor"><span class="secnum">27.7.1</span> The AsyncFunction Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-async-function-constructor-arguments" title="AsyncFunction ( ...parameterArgs, bodyArg )"><span class="secnum">27.7.1.1</span> AsyncFunction ( ...<var>parameterArgs</var>, <var>bodyArg</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-async-function-constructor-properties" title="Properties of the AsyncFunction Constructor"><span class="secnum">27.7.2</span> Properties of the AsyncFunction Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-async-function-constructor-prototype" title="AsyncFunction.prototype"><span class="secnum">27.7.2.1</span> AsyncFunction.prototype</a></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-async-function-prototype-properties" title="Properties of the AsyncFunction Prototype Object"><span class="secnum">27.7.3</span> Properties of the AsyncFunction Prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-async-function-prototype-properties-constructor" title="AsyncFunction.prototype.constructor"><span class="secnum">27.7.3.1</span> AsyncFunction.prototype.constructor</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-async-function-prototype-%symbol.tostringtag%" title="AsyncFunction.prototype [ %Symbol.toStringTag% ]"><span class="secnum">27.7.3.2</span> AsyncFunction.prototype [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-async-function-instances" title="AsyncFunction Instances"><span class="secnum">27.7.4</span> AsyncFunction Instances</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-async-function-instances-length" title="length"><span class="secnum">27.7.4.1</span> length</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-async-function-instances-name" title="name"><span class="secnum">27.7.4.2</span> name</a></li></ol></li><li><span class="item-toggle">+</span><a href="control-abstraction-objects.html#sec-async-functions-abstract-operations" title="Async Functions Abstract Operations"><span class="secnum">27.7.5</span> Async Functions Abstract Operations</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-async-functions-abstract-operations-async-function-start" title="AsyncFunctionStart ( promiseCapability, asyncFunctionBody )"><span class="secnum">27.7.5.1</span> AsyncFunctionStart ( <var>promiseCapability</var>, <var>asyncFunctionBody</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#sec-asyncblockstart" title="AsyncBlockStart ( promiseCapability, asyncBody, asyncContext )"><span class="secnum">27.7.5.2</span> AsyncBlockStart ( <var>promiseCapability</var>, <var>asyncBody</var>, <var>asyncContext</var> )</a></li><li><span class="item-toggle-none"></span><a href="control-abstraction-objects.html#await" title="Await ( value )"><span class="secnum">27.7.5.3</span> Await ( <var>value</var> )</a></li></ol></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="reflection.html#sec-reflection" title="Reflection"><span class="secnum">28</span> Reflection</a><ol class="toc"><li><span class="item-toggle">+</span><a href="reflection.html#sec-reflect-object" title="The Reflect Object"><span class="secnum">28.1</span> The Reflect Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="reflection.html#sec-reflect.apply" title="Reflect.apply ( target, thisArgument, argumentsList )"><span class="secnum">28.1.1</span> Reflect.apply ( <var>target</var>, <var>thisArgument</var>, <var>argumentsList</var> )</a></li><li><span class="item-toggle-none"></span><a href="reflection.html#sec-reflect.construct" title="Reflect.construct ( target, argumentsList [ , newTarget ] )"><span class="secnum">28.1.2</span> Reflect.construct ( <var>target</var>, <var>argumentsList</var> [ , <var>newTarget</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="reflection.html#sec-reflect.defineproperty" title="Reflect.defineProperty ( target, propertyKey, attributes )"><span class="secnum">28.1.3</span> Reflect.defineProperty ( <var>target</var>, <var>propertyKey</var>, <var>attributes</var> )</a></li><li><span class="item-toggle-none"></span><a href="reflection.html#sec-reflect.deleteproperty" title="Reflect.deleteProperty ( target, propertyKey )"><span class="secnum">28.1.4</span> Reflect.deleteProperty ( <var>target</var>, <var>propertyKey</var> )</a></li><li><span class="item-toggle-none"></span><a href="reflection.html#sec-reflect.get" title="Reflect.get ( target, propertyKey [ , receiver ] )"><span class="secnum">28.1.5</span> Reflect.get ( <var>target</var>, <var>propertyKey</var> [ , <var>receiver</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="reflection.html#sec-reflect.getownpropertydescriptor" title="Reflect.getOwnPropertyDescriptor ( target, propertyKey )"><span class="secnum">28.1.6</span> Reflect.getOwnPropertyDescriptor ( <var>target</var>, <var>propertyKey</var> )</a></li><li><span class="item-toggle-none"></span><a href="reflection.html#sec-reflect.getprototypeof" title="Reflect.getPrototypeOf ( target )"><span class="secnum">28.1.7</span> Reflect.getPrototypeOf ( <var>target</var> )</a></li><li><span class="item-toggle-none"></span><a href="reflection.html#sec-reflect.has" title="Reflect.has ( target, propertyKey )"><span class="secnum">28.1.8</span> Reflect.has ( <var>target</var>, <var>propertyKey</var> )</a></li><li><span class="item-toggle-none"></span><a href="reflection.html#sec-reflect.isextensible" title="Reflect.isExtensible ( target )"><span class="secnum">28.1.9</span> Reflect.isExtensible ( <var>target</var> )</a></li><li><span class="item-toggle-none"></span><a href="reflection.html#sec-reflect.ownkeys" title="Reflect.ownKeys ( target )"><span class="secnum">28.1.10</span> Reflect.ownKeys ( <var>target</var> )</a></li><li><span class="item-toggle-none"></span><a href="reflection.html#sec-reflect.preventextensions" title="Reflect.preventExtensions ( target )"><span class="secnum">28.1.11</span> Reflect.preventExtensions ( <var>target</var> )</a></li><li><span class="item-toggle-none"></span><a href="reflection.html#sec-reflect.set" title="Reflect.set ( target, propertyKey, V [ , receiver ] )"><span class="secnum">28.1.12</span> Reflect.set ( <var>target</var>, <var>propertyKey</var>, <var>V</var> [ , <var>receiver</var> ] )</a></li><li><span class="item-toggle-none"></span><a href="reflection.html#sec-reflect.setprototypeof" title="Reflect.setPrototypeOf ( target, proto )"><span class="secnum">28.1.13</span> Reflect.setPrototypeOf ( <var>target</var>, <var>proto</var> )</a></li><li><span class="item-toggle-none"></span><a href="reflection.html#sec-reflect-%symbol.tostringtag%" title="Reflect [ %Symbol.toStringTag% ]"><span class="secnum">28.1.14</span> Reflect [ %Symbol.toStringTag% ]</a></li></ol></li><li><span class="item-toggle">+</span><a href="reflection.html#sec-proxy-objects" title="Proxy Objects"><span class="secnum">28.2</span> Proxy Objects</a><ol class="toc"><li><span class="item-toggle">+</span><a href="reflection.html#sec-proxy-constructor" title="The Proxy Constructor"><span class="secnum">28.2.1</span> The Proxy Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="reflection.html#sec-proxy-target-handler" title="Proxy ( target, handler )"><span class="secnum">28.2.1.1</span> Proxy ( <var>target</var>, <var>handler</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="reflection.html#sec-properties-of-the-proxy-constructor" title="Properties of the Proxy Constructor"><span class="secnum">28.2.2</span> Properties of the Proxy Constructor</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="reflection.html#sec-proxy.revocable" title="Proxy.revocable ( target, handler )"><span class="secnum">28.2.2.1</span> Proxy.revocable ( <var>target</var>, <var>handler</var> )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="reflection.html#sec-module-namespace-objects" title="Module Namespace Objects"><span class="secnum">28.3</span> Module Namespace Objects</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="reflection.html#sec-%symbol.tostringtag%" title="%Symbol.toStringTag%"><span class="secnum">28.3.1</span> %Symbol.toStringTag%</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="memory-model.html#sec-memory-model" title="Memory Model"><span class="secnum">29</span> Memory Model</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-memory-model-fundamentals" title="Memory Model Fundamentals"><span class="secnum">29.1</span> Memory Model Fundamentals</a></li><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-agent-event-records" title="Agent Events Records"><span class="secnum">29.2</span> Agent Events Records</a></li><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-chosen-value-records" title="Chosen Value Records"><span class="secnum">29.3</span> Chosen Value Records</a></li><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-candidate-executions" title="Candidate Executions"><span class="secnum">29.4</span> Candidate Executions</a></li><li><span class="item-toggle">+</span><a href="memory-model.html#sec-abstract-operations-for-the-memory-model" title="Abstract Operations for the Memory Model"><span class="secnum">29.5</span> Abstract Operations for the Memory Model</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-event-set" title="EventSet ( execution )"><span class="secnum">29.5.1</span> EventSet ( <var>execution</var> )</a></li><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-sharedatablockeventset" title="SharedDataBlockEventSet ( execution )"><span class="secnum">29.5.2</span> SharedDataBlockEventSet ( <var>execution</var> )</a></li><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-hosteventset" title="HostEventSet ( execution )"><span class="secnum">29.5.3</span> HostEventSet ( <var>execution</var> )</a></li><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-composewriteeventbytes" title="ComposeWriteEventBytes ( execution, byteIndex, Ws )"><span class="secnum">29.5.4</span> ComposeWriteEventBytes ( <var>execution</var>, <var>byteIndex</var>, <var>Ws</var> )</a></li><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-valueofreadevent" title="ValueOfReadEvent ( execution, R )"><span class="secnum">29.5.5</span> ValueOfReadEvent ( <var>execution</var>, <var>R</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="memory-model.html#sec-relations-of-candidate-executions" title="Relations of Candidate Executions"><span class="secnum">29.6</span> Relations of Candidate Executions</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-agent-order" title="is-agent-order-before"><span class="secnum">29.6.1</span> is-agent-order-before</a></li><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-reads-bytes-from" title="reads-bytes-from"><span class="secnum">29.6.2</span> reads-bytes-from</a></li><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-reads-from" title="reads-from"><span class="secnum">29.6.3</span> reads-from</a></li><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-host-synchronizes-with" title="host-synchronizes-with"><span class="secnum">29.6.4</span> host-synchronizes-with</a></li><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-synchronizes-with" title="synchronizes-with"><span class="secnum">29.6.5</span> synchronizes-with</a></li><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-happens-before" title="happens-before"><span class="secnum">29.6.6</span> happens-before</a></li></ol></li><li><span class="item-toggle">+</span><a href="memory-model.html#sec-properties-of-valid-executions" title="Properties of Valid Executions"><span class="secnum">29.7</span> Properties of Valid Executions</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-valid-chosen-reads" title="Valid Chosen Reads"><span class="secnum">29.7.1</span> Valid Chosen Reads</a></li><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-coherent-reads" title="Coherent Reads"><span class="secnum">29.7.2</span> Coherent Reads</a></li><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-tear-free-aligned-reads" title="Tear Free Reads"><span class="secnum">29.7.3</span> Tear Free Reads</a></li><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-memory-order" title="Sequentially Consistent Atomics"><span class="secnum">29.7.4</span> Sequentially Consistent Atomics</a></li><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-valid-executions" title="Valid Executions"><span class="secnum">29.7.5</span> Valid Executions</a></li></ol></li><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-races" title="Races"><span class="secnum">29.8</span> Races</a></li><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-data-races" title="Data Races"><span class="secnum">29.9</span> Data Races</a></li><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-data-race-freedom" title="Data Race Freedom"><span class="secnum">29.10</span> Data Race Freedom</a></li><li><span class="item-toggle-none"></span><a href="memory-model.html#sec-shared-memory-guidelines" title="Shared Memory Guidelines"><span class="secnum">29.11</span> Shared Memory Guidelines</a></li></ol></li><li><span class="item-toggle">+</span><a href="grammar-summary.html#sec-grammar-summary" title="Grammar Summary"><span class="secnum">Annex A <span class="annex-kind">(informative)</span></span> Grammar Summary</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="grammar-summary.html#sec-lexical-grammar" title="Lexical Grammar"><span class="secnum">A.1</span> Lexical Grammar</a></li><li><span class="item-toggle-none"></span><a href="grammar-summary.html#sec-expressions" title="Expressions"><span class="secnum">A.2</span> Expressions</a></li><li><span class="item-toggle-none"></span><a href="grammar-summary.html#sec-statements" title="Statements"><span class="secnum">A.3</span> Statements</a></li><li><span class="item-toggle-none"></span><a href="grammar-summary.html#sec-functions-and-classes" title="Functions and Classes"><span class="secnum">A.4</span> Functions and Classes</a></li><li><span class="item-toggle-none"></span><a href="grammar-summary.html#sec-scripts-and-modules" title="Scripts and Modules"><span class="secnum">A.5</span> Scripts and Modules</a></li><li><span class="item-toggle-none"></span><a href="grammar-summary.html#sec-number-conversions" title="Number Conversions"><span class="secnum">A.6</span> Number Conversions</a></li><li><span class="item-toggle-none"></span><a href="grammar-summary.html#sec-time-zone-offset-string-format" title="Time Zone Offset String Format"><span class="secnum">A.7</span> Time Zone Offset String Format</a></li><li><span class="item-toggle-none"></span><a href="grammar-summary.html#sec-regular-expressions" title="Regular Expressions"><span class="secnum">A.8</span> Regular Expressions</a></li></ol></li><li><span class="item-toggle">+</span><a href="additional-ecmascript-features-for-web-browsers.html#sec-additional-ecmascript-features-for-web-browsers" title="Additional ECMAScript Features for Web Browsers"><span class="secnum">Annex B <span class="annex-kind">(normative)</span></span> Additional ECMAScript Features for Web Browsers</a><ol class="toc"><li><span class="item-toggle">+</span><a href="additional-ecmascript-features-for-web-browsers.html#sec-additional-syntax" title="Additional Syntax"><span class="secnum">B.1</span> Additional Syntax</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-html-like-comments" title="HTML-like Comments"><span class="secnum">B.1.1</span> HTML-like Comments</a></li><li><span class="item-toggle">+</span><a href="additional-ecmascript-features-for-web-browsers.html#sec-regular-expressions-patterns" title="Regular Expressions Patterns"><span class="secnum">B.1.2</span> Regular Expressions Patterns</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-patterns-static-semantics-early-errors-annexb" title="Static Semantics: Early Errors"><span class="secnum">B.1.2.1</span> SS: Early Errors</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-countleftcapturingparens-annexb" title="Static Semantics: CountLeftCapturingParensWithin and CountLeftCapturingParensBefore"><span class="secnum">B.1.2.2</span> SS: CountLeftCapturingParensWithin and CountLeftCapturingParensBefore</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-patterns-static-semantics-is-character-class-annexb" title="Static Semantics: IsCharacterClass"><span class="secnum">B.1.2.3</span> SS: IsCharacterClass</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-patterns-static-semantics-character-value-annexb" title="Static Semantics: CharacterValue"><span class="secnum">B.1.2.4</span> SS: CharacterValue</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-compilesubpattern-annexb" title="Runtime Semantics: CompileSubpattern"><span class="secnum">B.1.2.5</span> RS: CompileSubpattern</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-compileassertion-annexb" title="Runtime Semantics: CompileAssertion"><span class="secnum">B.1.2.6</span> RS: CompileAssertion</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-compileatom-annexb" title="Runtime Semantics: CompileAtom"><span class="secnum">B.1.2.7</span> RS: CompileAtom</a></li><li><span class="item-toggle">+</span><a href="additional-ecmascript-features-for-web-browsers.html#sec-compiletocharset-annexb" title="Runtime Semantics: CompileToCharSet"><span class="secnum">B.1.2.8</span> RS: CompileToCharSet</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-runtime-semantics-characterrangeorunion-abstract-operation" title="CharacterRangeOrUnion ( rer, A, B )"><span class="secnum">B.1.2.8.1</span> CharacterRangeOrUnion ( <var>rer</var>, <var>A</var>, <var>B</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-parsepattern-annexb" title="Static Semantics: ParsePattern ( patternText, u, v )"><span class="secnum">B.1.2.9</span> SS: ParsePattern ( <var>patternText</var>, <var>u</var>, <var>v</var> )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="additional-ecmascript-features-for-web-browsers.html#sec-additional-built-in-properties" title="Additional Built-in Properties"><span class="secnum">B.2</span> Additional Built-in Properties</a><ol class="toc"><li><span class="item-toggle">+</span><a href="additional-ecmascript-features-for-web-browsers.html#sec-additional-properties-of-the-global-object" title="Additional Properties of the Global Object"><span class="secnum">B.2.1</span> Additional Properties of the Global Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-escape-string" title="escape ( string )"><span class="secnum">B.2.1.1</span> escape ( <var>string</var> )</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-unescape-string" title="unescape ( string )"><span class="secnum">B.2.1.2</span> unescape ( <var>string</var> )</a></li></ol></li><li><span class="item-toggle">+</span><a href="additional-ecmascript-features-for-web-browsers.html#sec-additional-properties-of-the-string.prototype-object" title="Additional Properties of the String.prototype Object"><span class="secnum">B.2.2</span> Additional Properties of the String.prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-string.prototype.substr" title="String.prototype.substr ( start, length )"><span class="secnum">B.2.2.1</span> String.prototype.substr ( <var>start</var>, <var>length</var> )</a></li><li><span class="item-toggle">+</span><a href="additional-ecmascript-features-for-web-browsers.html#sec-string.prototype.anchor" title="String.prototype.anchor ( name )"><span class="secnum">B.2.2.2</span> String.prototype.anchor ( <var>name</var> )</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-createhtml" title="CreateHTML ( string, tag, attribute, value )"><span class="secnum">B.2.2.2.1</span> CreateHTML ( <var>string</var>, <var>tag</var>, <var>attribute</var>, <var>value</var> )</a></li></ol></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-string.prototype.big" title="String.prototype.big ( )"><span class="secnum">B.2.2.3</span> String.prototype.big ( )</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-string.prototype.blink" title="String.prototype.blink ( )"><span class="secnum">B.2.2.4</span> String.prototype.blink ( )</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-string.prototype.bold" title="String.prototype.bold ( )"><span class="secnum">B.2.2.5</span> String.prototype.bold ( )</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-string.prototype.fixed" title="String.prototype.fixed ( )"><span class="secnum">B.2.2.6</span> String.prototype.fixed ( )</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-string.prototype.fontcolor" title="String.prototype.fontcolor ( colour )"><span class="secnum">B.2.2.7</span> String.prototype.fontcolor ( <var>colour</var> )</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-string.prototype.fontsize" title="String.prototype.fontsize ( size )"><span class="secnum">B.2.2.8</span> String.prototype.fontsize ( <var>size</var> )</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-string.prototype.italics" title="String.prototype.italics ( )"><span class="secnum">B.2.2.9</span> String.prototype.italics ( )</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-string.prototype.link" title="String.prototype.link ( url )"><span class="secnum">B.2.2.10</span> String.prototype.link ( <var>url</var> )</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-string.prototype.small" title="String.prototype.small ( )"><span class="secnum">B.2.2.11</span> String.prototype.small ( )</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-string.prototype.strike" title="String.prototype.strike ( )"><span class="secnum">B.2.2.12</span> String.prototype.strike ( )</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-string.prototype.sub" title="String.prototype.sub ( )"><span class="secnum">B.2.2.13</span> String.prototype.sub ( )</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-string.prototype.sup" title="String.prototype.sup ( )"><span class="secnum">B.2.2.14</span> String.prototype.sup ( )</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#String.prototype.trimleft" title="String.prototype.trimLeft ( )"><span class="secnum">B.2.2.15</span> String.prototype.trimLeft ( )</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#String.prototype.trimright" title="String.prototype.trimRight ( )"><span class="secnum">B.2.2.16</span> String.prototype.trimRight ( )</a></li></ol></li><li><span class="item-toggle">+</span><a href="additional-ecmascript-features-for-web-browsers.html#sec-additional-properties-of-the-date.prototype-object" title="Additional Properties of the Date.prototype Object"><span class="secnum">B.2.3</span> Additional Properties of the Date.prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-date.prototype.getyear" title="Date.prototype.getYear ( )"><span class="secnum">B.2.3.1</span> Date.prototype.getYear ( )</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-date.prototype.setyear" title="Date.prototype.setYear ( year )"><span class="secnum">B.2.3.2</span> Date.prototype.setYear ( <var>year</var> )</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-date.prototype.togmtstring" title="Date.prototype.toGMTString ( )"><span class="secnum">B.2.3.3</span> Date.prototype.toGMTString ( )</a></li></ol></li><li><span class="item-toggle">+</span><a href="additional-ecmascript-features-for-web-browsers.html#sec-additional-properties-of-the-regexp.prototype-object" title="Additional Properties of the RegExp.prototype Object"><span class="secnum">B.2.4</span> Additional Properties of the RegExp.prototype Object</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-regexp.prototype.compile" title="RegExp.prototype.compile ( pattern, flags )"><span class="secnum">B.2.4.1</span> RegExp.prototype.compile ( <var>pattern</var>, <var>flags</var> )</a></li></ol></li></ol></li><li><span class="item-toggle">+</span><a href="additional-ecmascript-features-for-web-browsers.html#sec-other-additional-features" title="Other Additional Features"><span class="secnum">B.3</span> Other Additional Features</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-labelled-function-declarations" title="Labelled Function Declarations"><span class="secnum">B.3.1</span> Labelled Function Declarations</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-block-level-function-declarations-web-legacy-compatibility-semantics" title="Block-Level Function Declarations Web Legacy Compatibility Semantics"><span class="secnum">B.3.2</span> Block-Level Function Declarations Web Legacy Compatibility Semantics</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-functiondeclarations-in-ifstatement-statement-clauses" title="FunctionDeclarations in IfStatement Statement Clauses"><span class="secnum">B.3.3</span> FunctionDeclarations in IfStatement Statement Clauses</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-variablestatements-in-catch-blocks" title="VariableStatements in Catch Blocks"><span class="secnum">B.3.4</span> VariableStatements in Catch Blocks</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-initializers-in-forin-statement-heads" title="Initializers in ForIn Statement Heads"><span class="secnum">B.3.5</span> Initializers in ForIn Statement Heads</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-IsHTMLDDA-internal-slot" title="The [[IsHTMLDDA]] Internal Slot"><span class="secnum">B.3.6</span> The <var class="field">[[IsHTMLDDA]]</var> Internal Slot</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-web-compat-host-make-job-callback" title="Non-default behaviour in HostMakeJobCallback"><span class="secnum">B.3.7</span> Non-default behaviour in HostMakeJobCallback</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-web-compat-host-ensure-can-add-private-field" title="Non-default behaviour in HostEnsureCanAddPrivateElement"><span class="secnum">B.3.8</span> Non-default behaviour in HostEnsureCanAddPrivateElement</a></li><li><span class="item-toggle-none"></span><a href="additional-ecmascript-features-for-web-browsers.html#sec-runtime-errors-for-function-call-assignment-targets" title="Runtime Errors for Function Call Assignment Targets"><span class="secnum">B.3.9</span> Runtime Errors for Function Call Assignment Targets</a></li></ol></li></ol></li><li><span class="item-toggle-none"></span><a href="strict-mode-of-ecmascript.html#sec-strict-mode-of-ecmascript" title="The Strict Mode of ECMAScript"><span class="secnum">Annex C <span class="annex-kind">(informative)</span></span> The Strict Mode of ECMAScript</a></li><li><span class="item-toggle">+</span><a href="host-layering-points.html#sec-host-layering-points" title="Host Layering Points"><span class="secnum">Annex D <span class="annex-kind">(informative)</span></span> Host Layering Points</a><ol class="toc"><li><span class="item-toggle-none"></span><a href="host-layering-points.html#sec-host-hooks-summary" title="Host Hooks"><span class="secnum">D.1</span> Host Hooks</a></li><li><span class="item-toggle-none"></span><a href="host-layering-points.html#sec-host-defined-fields-summary" title="Host-defined Fields"><span class="secnum">D.2</span> Host-defined Fields</a></li><li><span class="item-toggle-none"></span><a href="host-layering-points.html#sec-host-defined-objects-summary" title="Host-defined Objects"><span class="secnum">D.3</span> Host-defined Objects</a></li><li><span class="item-toggle-none"></span><a href="host-layering-points.html#sec-host-running-jobs" title="Running Jobs"><span class="secnum">D.4</span> Running Jobs</a></li><li><span class="item-toggle-none"></span><a href="host-layering-points.html#sec-host-internal-methods-of-exotic-objects" title="Internal Methods of Exotic Objects"><span class="secnum">D.5</span> Internal Methods of Exotic Objects</a></li><li><span class="item-toggle-none"></span><a href="host-layering-points.html#sec-host-built-in-objects-and-methods" title="Built-in Objects and Methods"><span class="secnum">D.6</span> Built-in Objects and Methods</a></li></ol></li><li><span class="item-toggle-none"></span><a href="corrections-and-clarifications-in-ecmascript-2015-with-possible-compatibility-impact.html#sec-corrections-and-clarifications-in-ecmascript-2015-with-possible-compatibility-impact" title="Corrections and Clarifications in ECMAScript 2015 with Possible Compatibility Impact"><span class="secnum">Annex E <span class="annex-kind">(informative)</span></span> Corrections and Clarifications in ECMAScript 2015 with Possible Compatibility Impact</a></li><li><span class="item-toggle-none"></span><a href="additions-and-changes-that-introduce-incompatibilities-with-prior-editions.html#sec-additions-and-changes-that-introduce-incompatibilities-with-prior-editions" title="Additions and Changes That Introduce Incompatibilities with Prior Editions"><span class="secnum">Annex F <span class="annex-kind">(informative)</span></span> Additions and Changes That Introduce Incompatibilities with Prior Editions</a></li><li><span class="item-toggle-none"></span><a href="bibliography.html#sec-bibliography" title="Bibliography">Bibliography</a></li><li><span class="item-toggle-none"></span><a href="colophon.html#sec-colophon" title="Colophon">Colophon</a></li><li><span class="item-toggle-none"></span><a href="copyright-and-software-license.html#sec-copyright-and-software-license" title="Copyright & Software License">Copyright & Software License</a></li></ol></div></div>
|
|
<div id="menu-spacer" class="menu-spacer"></div>
|
|
<div id="menu-toggle"><svg xmlns="http://www.w3.org/2000/svg" style="width:100%; height:100%; stroke:currentColor" viewBox="0 0 120 120" width="54" height="54">
|
|
<title>Menu</title>
|
|
<path stroke-width="10" stroke-linecap="round" d="M30,60 h60 M30,30 m0,5 h60 M30,90 m0,-5 h60"></path>
|
|
</svg></div>
|
|
<div id="shortcuts-help">
|
|
<ul>
|
|
<li><span>Toggle shortcuts help</span><code>?</code></li>
|
|
<li><span>Toggle "can call user code" annotations</span><code>u</code></li>
|
|
<li><span>Navigate to/from multipage</span><code>m</code></li>
|
|
<li><span>Jump to search box</span><code>/</code></li>
|
|
<li><span>Toggle pinning of the current clause</span><code>p</code></li>
|
|
<li><span>Jump to the <i>n</i><sup>th</sup> pin</span><code>1-9</code></li>
|
|
<li><span>Jump to the 10<sup>th</sup> pin</span><code>0</code></li>
|
|
<li><span>Jump to the most recent link target</span><code>`</code></li>
|
|
</ul></div><div id='spec-container'><emu-annex id="sec-grammar-summary">
|
|
<h1><span class="secnum">Annex A <span class="annex-kind">(informative)</span></span> Grammar Summary</h1>
|
|
|
|
<emu-annex id="sec-lexical-grammar">
|
|
<h1><span class="secnum">A.1</span> Lexical Grammar</h1>
|
|
<emu-production name="SourceCharacter" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-source-code.html#prod-SourceCharacter">SourceCharacter</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="xks4vqzw">
|
|
<emu-gprose>any Unicode code point</emu-gprose>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="InputElementDiv" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-InputElementDiv">InputElementDiv</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="fctcswat">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-WhiteSpace">WhiteSpace</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ozmczrck">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ft16wloj">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-Comment">Comment</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="gxwilro0">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-CommonToken">CommonToken</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="kanqhgik">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DivPunctuator">DivPunctuator</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ehmup46z">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RightBracePunctuator">RightBracePunctuator</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="InputElementRegExp" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-InputElementRegExp">InputElementRegExp</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="fctcswat">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-WhiteSpace">WhiteSpace</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ozmczrck">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ft16wloj">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-Comment">Comment</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="gxwilro0">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-CommonToken">CommonToken</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ehmup46z">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RightBracePunctuator">RightBracePunctuator</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="mbzy6lvr">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionLiteral">RegularExpressionLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="InputElementRegExpOrTemplateTail" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-InputElementRegExpOrTemplateTail">InputElementRegExpOrTemplateTail</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="fctcswat">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-WhiteSpace">WhiteSpace</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ozmczrck">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ft16wloj">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-Comment">Comment</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="gxwilro0">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-CommonToken">CommonToken</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="mbzy6lvr">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionLiteral">RegularExpressionLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="yq5uuf55">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-TemplateSubstitutionTail">TemplateSubstitutionTail</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="InputElementTemplateTail" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-InputElementTemplateTail">InputElementTemplateTail</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="fctcswat">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-WhiteSpace">WhiteSpace</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ozmczrck">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ft16wloj">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-Comment">Comment</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="gxwilro0">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-CommonToken">CommonToken</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="kanqhgik">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DivPunctuator">DivPunctuator</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="yq5uuf55">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-TemplateSubstitutionTail">TemplateSubstitutionTail</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="InputElementHashbangOrRegExp" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-InputElementHashbangOrRegExp">InputElementHashbangOrRegExp</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="fctcswat">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-WhiteSpace">WhiteSpace</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ozmczrck">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ft16wloj">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-Comment">Comment</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="gxwilro0">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-CommonToken">CommonToken</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="pcfv_yin">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HashbangComment">HashbangComment</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="mbzy6lvr">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionLiteral">RegularExpressionLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="WhiteSpace" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-WhiteSpace">WhiteSpace</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="k4soaizl">
|
|
<emu-gprose><TAB></emu-gprose>
|
|
</emu-rhs>
|
|
<emu-rhs a="w_cit1lu">
|
|
<emu-gprose><VT></emu-gprose>
|
|
</emu-rhs>
|
|
<emu-rhs a="dvfflmsr">
|
|
<emu-gprose><FF></emu-gprose>
|
|
</emu-rhs>
|
|
<emu-rhs a="-4gwujcl">
|
|
<emu-gprose><ZWNBSP></emu-gprose>
|
|
</emu-rhs>
|
|
<emu-rhs a="68nsiosh">
|
|
<emu-gprose><USP></emu-gprose>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="LineTerminator" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="eznvjwhz">
|
|
<emu-gprose><LF></emu-gprose>
|
|
</emu-rhs>
|
|
<emu-rhs a="q1yr1eki">
|
|
<emu-gprose><CR></emu-gprose>
|
|
</emu-rhs>
|
|
<emu-rhs a="eaiqsw9w">
|
|
<emu-gprose><LS></emu-gprose>
|
|
</emu-rhs>
|
|
<emu-rhs a="z8h10fxn">
|
|
<emu-gprose><PS></emu-gprose>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="LineTerminatorSequence" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminatorSequence">LineTerminatorSequence</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="eznvjwhz">
|
|
<emu-gprose><LF></emu-gprose>
|
|
</emu-rhs>
|
|
<emu-rhs a="hiltsszk">
|
|
<emu-gprose><CR></emu-gprose>
|
|
<emu-gann>[lookahead ≠ <emu-gprose><LF></emu-gprose>]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="eaiqsw9w">
|
|
<emu-gprose><LS></emu-gprose>
|
|
</emu-rhs>
|
|
<emu-rhs a="z8h10fxn">
|
|
<emu-gprose><PS></emu-gprose>
|
|
</emu-rhs>
|
|
<emu-rhs a="lajs7kyd">
|
|
<emu-gprose><CR></emu-gprose>
|
|
<emu-gprose><LF></emu-gprose>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="Comment" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-Comment">Comment</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="sieyeref">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-MultiLineComment">MultiLineComment</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="sscrkqcd">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-SingleLineComment">SingleLineComment</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="MultiLineComment" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-MultiLineComment">MultiLineComment</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="hhzm60cr">
|
|
<emu-t>/*</emu-t>
|
|
<emu-nt optional=""><a href="ecmascript-language-lexical-grammar.html#prod-MultiLineCommentChars">MultiLineCommentChars</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>*/</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="MultiLineCommentChars" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-MultiLineCommentChars">MultiLineCommentChars</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="jkbv-8n6">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-MultiLineNotAsteriskChar">MultiLineNotAsteriskChar</a></emu-nt>
|
|
<emu-nt optional=""><a href="ecmascript-language-lexical-grammar.html#prod-MultiLineCommentChars">MultiLineCommentChars</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="b8trwjej">
|
|
<emu-t>*</emu-t>
|
|
<emu-nt optional=""><a href="ecmascript-language-lexical-grammar.html#prod-PostAsteriskCommentChars">PostAsteriskCommentChars</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="PostAsteriskCommentChars" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-PostAsteriskCommentChars">PostAsteriskCommentChars</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="jwfqbwpm">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-MultiLineNotForwardSlashOrAsteriskChar">MultiLineNotForwardSlashOrAsteriskChar</a></emu-nt>
|
|
<emu-nt optional=""><a href="ecmascript-language-lexical-grammar.html#prod-MultiLineCommentChars">MultiLineCommentChars</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="b8trwjej">
|
|
<emu-t>*</emu-t>
|
|
<emu-nt optional=""><a href="ecmascript-language-lexical-grammar.html#prod-PostAsteriskCommentChars">PostAsteriskCommentChars</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="MultiLineNotAsteriskChar" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-MultiLineNotAsteriskChar">MultiLineNotAsteriskChar</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="lflef8ko">
|
|
<emu-nt><a href="ecmascript-language-source-code.html#prod-SourceCharacter">SourceCharacter</a></emu-nt> <emu-gmod>but not <emu-t>*</emu-t></emu-gmod>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="MultiLineNotForwardSlashOrAsteriskChar" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-MultiLineNotForwardSlashOrAsteriskChar">MultiLineNotForwardSlashOrAsteriskChar</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="hdfnrv5z">
|
|
<emu-nt><a href="ecmascript-language-source-code.html#prod-SourceCharacter">SourceCharacter</a></emu-nt> <emu-gmod>but not one of <emu-t>/</emu-t> or <emu-t>*</emu-t></emu-gmod>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="SingleLineComment" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-SingleLineComment">SingleLineComment</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="u-3whel6">
|
|
<emu-t>//</emu-t>
|
|
<emu-nt optional=""><a href="ecmascript-language-lexical-grammar.html#prod-SingleLineCommentChars">SingleLineCommentChars</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="SingleLineCommentChars" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-SingleLineCommentChars">SingleLineCommentChars</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="rshuryvh">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-SingleLineCommentChar">SingleLineCommentChar</a></emu-nt>
|
|
<emu-nt optional=""><a href="ecmascript-language-lexical-grammar.html#prod-SingleLineCommentChars">SingleLineCommentChars</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="SingleLineCommentChar" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-SingleLineCommentChar">SingleLineCommentChar</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="lvvfp8iw">
|
|
<emu-nt><a href="ecmascript-language-source-code.html#prod-SourceCharacter">SourceCharacter</a></emu-nt> <emu-gmod>but not <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt></emu-gmod>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="HashbangComment" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HashbangComment">HashbangComment</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="jrptdok4">
|
|
<emu-t>#!</emu-t>
|
|
<emu-nt optional=""><a href="ecmascript-language-lexical-grammar.html#prod-SingleLineCommentChars">SingleLineCommentChars</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="CommonToken" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-CommonToken">CommonToken</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="drsx4tka">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierName">IdentifierName</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ie2-zc1c">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-PrivateIdentifier">PrivateIdentifier</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="7hjz1m8p">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-Punctuator">Punctuator</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="pui0b1rt">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NumericLiteral">NumericLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="xhtltz00">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-StringLiteral">StringLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="psgubhwn">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-Template">Template</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="PrivateIdentifier" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-PrivateIdentifier">PrivateIdentifier</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="echyiakf" id="prod-j40wR5UN">
|
|
<emu-t>#</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierName">IdentifierName</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="IdentifierName" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierName">IdentifierName</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="q0afq8g8" id="prod-NFOBX-lw">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierStart">IdentifierStart</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="cawc7ktu" id="prod-dbXHPjzF">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierName">IdentifierName</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierPart">IdentifierPart</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="IdentifierStart" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierStart">IdentifierStart</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="scjzw6a_" id="prod-XMog322C">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierStartChar">IdentifierStartChar</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="b7ylgc5w">
|
|
<emu-t>\</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-UnicodeEscapeSequence">UnicodeEscapeSequence</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="IdentifierPart" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierPart">IdentifierPart</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="q3hdl-qt" id="prod-ba_xP9Ao">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierPartChar">IdentifierPartChar</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="b7ylgc5w">
|
|
<emu-t>\</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-UnicodeEscapeSequence">UnicodeEscapeSequence</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="IdentifierStartChar" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierStartChar">IdentifierStartChar</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="cgljdgmz">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-UnicodeIDStart">UnicodeIDStart</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="emlmkqfm">
|
|
<emu-t>$</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="b1zllonv">
|
|
<emu-t>_</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="IdentifierPartChar" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierPartChar">IdentifierPartChar</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="nkrgdqi0">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-UnicodeIDContinue">UnicodeIDContinue</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="emlmkqfm">
|
|
<emu-t>$</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AsciiLetter" type="lexical" oneof="">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-AsciiLetter">AsciiLetter</a></emu-nt> <emu-geq>::</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>a</emu-t> <emu-t>b</emu-t> <emu-t>c</emu-t> <emu-t>d</emu-t> <emu-t>e</emu-t> <emu-t>f</emu-t> <emu-t>g</emu-t> <emu-t>h</emu-t> <emu-t>i</emu-t> <emu-t>j</emu-t> <emu-t>k</emu-t> <emu-t>l</emu-t> <emu-t>m</emu-t> <emu-t>n</emu-t> <emu-t>o</emu-t> <emu-t>p</emu-t> <emu-t>q</emu-t> <emu-t>r</emu-t> <emu-t>s</emu-t> <emu-t>t</emu-t> <emu-t>u</emu-t> <emu-t>v</emu-t> <emu-t>w</emu-t> <emu-t>x</emu-t> <emu-t>y</emu-t> <emu-t>z</emu-t> <emu-t>A</emu-t> <emu-t>B</emu-t> <emu-t>C</emu-t> <emu-t>D</emu-t> <emu-t>E</emu-t> <emu-t>F</emu-t> <emu-t>G</emu-t> <emu-t>H</emu-t> <emu-t>I</emu-t> <emu-t>J</emu-t> <emu-t>K</emu-t> <emu-t>L</emu-t> <emu-t>M</emu-t> <emu-t>N</emu-t> <emu-t>O</emu-t> <emu-t>P</emu-t> <emu-t>Q</emu-t> <emu-t>R</emu-t> <emu-t>S</emu-t> <emu-t>T</emu-t> <emu-t>U</emu-t> <emu-t>V</emu-t> <emu-t>W</emu-t> <emu-t>X</emu-t> <emu-t>Y</emu-t> <emu-t>Z</emu-t></emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="UnicodeIDStart" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-UnicodeIDStart">UnicodeIDStart</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="5b8wyfgv">
|
|
<emu-gprose>any Unicode code point with the Unicode property “ID_Start”</emu-gprose>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="UnicodeIDContinue" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-UnicodeIDContinue">UnicodeIDContinue</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="2xrubxc8">
|
|
<emu-gprose>any Unicode code point with the Unicode property “ID_Continue”</emu-gprose>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ReservedWord" type="lexical" oneof="">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-ReservedWord">ReservedWord</a></emu-nt> <emu-geq>::</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>await</emu-t> <emu-t>break</emu-t> <emu-t>case</emu-t> <emu-t>catch</emu-t> <emu-t>class</emu-t> <emu-t>const</emu-t> <emu-t>continue</emu-t> <emu-t>debugger</emu-t> <emu-t>default</emu-t> <emu-t>delete</emu-t> <emu-t>do</emu-t> <emu-t>else</emu-t> <emu-t>enum</emu-t> <emu-t>export</emu-t> <emu-t>extends</emu-t> <emu-t>false</emu-t> <emu-t>finally</emu-t> <emu-t>for</emu-t> <emu-t>function</emu-t> <emu-t>if</emu-t> <emu-t>import</emu-t> <emu-t>in</emu-t> <emu-t>instanceof</emu-t> <emu-t>new</emu-t> <emu-t>null</emu-t> <emu-t>return</emu-t> <emu-t>super</emu-t> <emu-t>switch</emu-t> <emu-t>this</emu-t> <emu-t>throw</emu-t> <emu-t>true</emu-t> <emu-t>try</emu-t> <emu-t>typeof</emu-t> <emu-t>var</emu-t> <emu-t>void</emu-t> <emu-t>while</emu-t> <emu-t>with</emu-t> <emu-t>yield</emu-t></emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="Punctuator" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-Punctuator">Punctuator</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="kgn-m1wb">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-OptionalChainingPunctuator">OptionalChainingPunctuator</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="5laghqp7">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-OtherPunctuator">OtherPunctuator</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="OptionalChainingPunctuator" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-OptionalChainingPunctuator">OptionalChainingPunctuator</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="imymz5qn">
|
|
<emu-t>?.</emu-t>
|
|
<emu-gann>[lookahead ∉ <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>]</emu-gann>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="OtherPunctuator" type="lexical" oneof="">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-OtherPunctuator">OtherPunctuator</a></emu-nt> <emu-geq>::</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>{</emu-t> <emu-t>(</emu-t> <emu-t>)</emu-t> <emu-t>[</emu-t> <emu-t>]</emu-t> <emu-t>.</emu-t> <emu-t>...</emu-t> <emu-t>;</emu-t> <emu-t>,</emu-t> <emu-t><</emu-t> <emu-t>></emu-t> <emu-t><=</emu-t> <emu-t>>=</emu-t> <emu-t>==</emu-t> <emu-t>!=</emu-t> <emu-t>===</emu-t> <emu-t>!==</emu-t> <emu-t>+</emu-t> <emu-t>-</emu-t> <emu-t>*</emu-t> <emu-t>%</emu-t> <emu-t>**</emu-t> <emu-t>++</emu-t> <emu-t>--</emu-t> <emu-t><<</emu-t> <emu-t>>></emu-t> <emu-t>>>></emu-t> <emu-t>&</emu-t> <emu-t>|</emu-t> <emu-t>^</emu-t> <emu-t>!</emu-t> <emu-t>~</emu-t> <emu-t>&&</emu-t> <emu-t>||</emu-t> <emu-t>??</emu-t> <emu-t>?</emu-t> <emu-t>:</emu-t> <emu-t>=</emu-t> <emu-t>+=</emu-t> <emu-t>-=</emu-t> <emu-t>*=</emu-t> <emu-t>%=</emu-t> <emu-t>**=</emu-t> <emu-t><<=</emu-t> <emu-t>>>=</emu-t> <emu-t>>>>=</emu-t> <emu-t>&=</emu-t> <emu-t>|=</emu-t> <emu-t>^=</emu-t> <emu-t>&&=</emu-t> <emu-t>||=</emu-t> <emu-t>??=</emu-t> <emu-t>=></emu-t></emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="DivPunctuator" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DivPunctuator">DivPunctuator</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="0_1fu2p8">
|
|
<emu-t>/</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="lgd_45yr">
|
|
<emu-t>/=</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="RightBracePunctuator" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RightBracePunctuator">RightBracePunctuator</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="jvy3_tcq">
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="NullLiteral" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NullLiteral">NullLiteral</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="d7uiab7a">
|
|
<emu-t>null</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="BooleanLiteral" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-BooleanLiteral">BooleanLiteral</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="-jc4xg27">
|
|
<emu-t>true</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="i9lgnxtt">
|
|
<emu-t>false</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="NumericLiteralSeparator" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NumericLiteralSeparator">NumericLiteralSeparator</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="b1zllonv">
|
|
<emu-t>_</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="NumericLiteral" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NumericLiteral">NumericLiteral</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="gma1bw5s" id="prod-Qn_oyvq2">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalLiteral">DecimalLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="jyfxftca">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalBigIntegerLiteral">DecimalBigIntegerLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="4meg50av" id="prod-U27qMVVP">
|
|
<emu-nt params="+Sep"><a href="ecmascript-language-lexical-grammar.html#prod-NonDecimalIntegerLiteral">NonDecimalIntegerLiteral</a><emu-mods><emu-params>[+Sep]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="5kjl_usk" id="prod-lP2MlcII">
|
|
<emu-nt params="+Sep"><a href="ecmascript-language-lexical-grammar.html#prod-NonDecimalIntegerLiteral">NonDecimalIntegerLiteral</a><emu-mods><emu-params>[+Sep]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-BigIntLiteralSuffix">BigIntLiteralSuffix</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="8n96hykg" id="prod-9vicHpLh">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LegacyOctalIntegerLiteral">LegacyOctalIntegerLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="DecimalBigIntegerLiteral" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalBigIntegerLiteral">DecimalBigIntegerLiteral</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="3e5icnkp" id="prod-v-a6rh2w">
|
|
<emu-t>0</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-BigIntLiteralSuffix">BigIntLiteralSuffix</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="s5lsf_yj" id="prod-b9VW4Mn-">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NonZeroDigit">NonZeroDigit</a></emu-nt>
|
|
<emu-nt params="+Sep" optional=""><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigits">DecimalDigits</a><emu-mods><emu-params>[+Sep]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-BigIntLiteralSuffix">BigIntLiteralSuffix</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="dpnxe4_1" id="prod-fgQ6BNSW">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NonZeroDigit">NonZeroDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NumericLiteralSeparator">NumericLiteralSeparator</a></emu-nt>
|
|
<emu-nt params="+Sep"><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigits">DecimalDigits</a><emu-mods><emu-params>[+Sep]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-BigIntLiteralSuffix">BigIntLiteralSuffix</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="NonDecimalIntegerLiteral" params="Sep" type="lexical">
|
|
<emu-nt params="Sep"><a href="ecmascript-language-lexical-grammar.html#prod-NonDecimalIntegerLiteral">NonDecimalIntegerLiteral</a><emu-mods><emu-params>[Sep]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="bob8gtet">
|
|
<emu-nt params="?Sep"><a href="ecmascript-language-lexical-grammar.html#prod-BinaryIntegerLiteral">BinaryIntegerLiteral</a><emu-mods><emu-params>[?Sep]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="tt6amuvr">
|
|
<emu-nt params="?Sep"><a href="ecmascript-language-lexical-grammar.html#prod-OctalIntegerLiteral">OctalIntegerLiteral</a><emu-mods><emu-params>[?Sep]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="c52jqkaw">
|
|
<emu-nt params="?Sep"><a href="ecmascript-language-lexical-grammar.html#prod-HexIntegerLiteral">HexIntegerLiteral</a><emu-mods><emu-params>[?Sep]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="BigIntLiteralSuffix" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-BigIntLiteralSuffix">BigIntLiteralSuffix</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="fleftghc">
|
|
<emu-t>n</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="DecimalLiteral" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalLiteral">DecimalLiteral</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="dkpbjbga">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalIntegerLiteral">DecimalIntegerLiteral</a></emu-nt>
|
|
<emu-t>.</emu-t>
|
|
<emu-nt params="+Sep" optional=""><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigits">DecimalDigits</a><emu-mods><emu-params>[+Sep]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-nt params="+Sep" optional=""><a href="ecmascript-language-lexical-grammar.html#prod-ExponentPart">ExponentPart</a><emu-mods><emu-params>[+Sep]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="mqovvwro">
|
|
<emu-t>.</emu-t>
|
|
<emu-nt params="+Sep"><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigits">DecimalDigits</a><emu-mods><emu-params>[+Sep]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="+Sep" optional=""><a href="ecmascript-language-lexical-grammar.html#prod-ExponentPart">ExponentPart</a><emu-mods><emu-params>[+Sep]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="5axp8jfj">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalIntegerLiteral">DecimalIntegerLiteral</a></emu-nt>
|
|
<emu-nt params="+Sep" optional=""><a href="ecmascript-language-lexical-grammar.html#prod-ExponentPart">ExponentPart</a><emu-mods><emu-params>[+Sep]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="DecimalIntegerLiteral" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalIntegerLiteral">DecimalIntegerLiteral</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="ulmkmvlx">
|
|
<emu-t>0</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="1mot5ut_">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NonZeroDigit">NonZeroDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="q8hj2ks6">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NonZeroDigit">NonZeroDigit</a></emu-nt>
|
|
<emu-nt optional=""><a href="ecmascript-language-lexical-grammar.html#prod-NumericLiteralSeparator">NumericLiteralSeparator</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-nt params="+Sep"><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigits">DecimalDigits</a><emu-mods><emu-params>[+Sep]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="xvklurnl">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NonOctalDecimalIntegerLiteral">NonOctalDecimalIntegerLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="DecimalDigits" params="Sep" type="lexical">
|
|
<emu-nt params="Sep"><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigits">DecimalDigits</a><emu-mods><emu-params>[Sep]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="s4me4hlz">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="vhziw9yj">
|
|
<emu-nt params="?Sep"><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigits">DecimalDigits</a><emu-mods><emu-params>[?Sep]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="o-8mes0t" constraints="+Sep"><emu-constraints>[+Sep]</emu-constraints>
|
|
<emu-nt params="+Sep"><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigits">DecimalDigits</a><emu-mods><emu-params>[+Sep]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NumericLiteralSeparator">NumericLiteralSeparator</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="DecimalDigit" type="lexical" oneof="">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt> <emu-geq>::</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>0</emu-t> <emu-t>1</emu-t> <emu-t>2</emu-t> <emu-t>3</emu-t> <emu-t>4</emu-t> <emu-t>5</emu-t> <emu-t>6</emu-t> <emu-t>7</emu-t> <emu-t>8</emu-t> <emu-t>9</emu-t></emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="NonZeroDigit" type="lexical" oneof="">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NonZeroDigit">NonZeroDigit</a></emu-nt> <emu-geq>::</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>1</emu-t> <emu-t>2</emu-t> <emu-t>3</emu-t> <emu-t>4</emu-t> <emu-t>5</emu-t> <emu-t>6</emu-t> <emu-t>7</emu-t> <emu-t>8</emu-t> <emu-t>9</emu-t></emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ExponentPart" params="Sep" type="lexical">
|
|
<emu-nt params="Sep"><a href="ecmascript-language-lexical-grammar.html#prod-ExponentPart">ExponentPart</a><emu-mods><emu-params>[Sep]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="qmupypsn">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-ExponentIndicator">ExponentIndicator</a></emu-nt>
|
|
<emu-nt params="?Sep"><a href="ecmascript-language-lexical-grammar.html#prod-SignedInteger">SignedInteger</a><emu-mods><emu-params>[?Sep]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ExponentIndicator" type="lexical" oneof="">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-ExponentIndicator">ExponentIndicator</a></emu-nt> <emu-geq>::</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>e</emu-t> <emu-t>E</emu-t></emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="SignedInteger" params="Sep" type="lexical">
|
|
<emu-nt params="Sep"><a href="ecmascript-language-lexical-grammar.html#prod-SignedInteger">SignedInteger</a><emu-mods><emu-params>[Sep]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="wf-nrzcq">
|
|
<emu-nt params="?Sep"><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigits">DecimalDigits</a><emu-mods><emu-params>[?Sep]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="luvuectp">
|
|
<emu-t>+</emu-t>
|
|
<emu-nt params="?Sep"><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigits">DecimalDigits</a><emu-mods><emu-params>[?Sep]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="z4gitkte">
|
|
<emu-t>-</emu-t>
|
|
<emu-nt params="?Sep"><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigits">DecimalDigits</a><emu-mods><emu-params>[?Sep]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="BinaryIntegerLiteral" params="Sep" type="lexical">
|
|
<emu-nt params="Sep"><a href="ecmascript-language-lexical-grammar.html#prod-BinaryIntegerLiteral">BinaryIntegerLiteral</a><emu-mods><emu-params>[Sep]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="12yuffnr">
|
|
<emu-t>0b</emu-t>
|
|
<emu-nt params="?Sep"><a href="ecmascript-language-lexical-grammar.html#prod-BinaryDigits">BinaryDigits</a><emu-mods><emu-params>[?Sep]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="fqezwbsj">
|
|
<emu-t>0B</emu-t>
|
|
<emu-nt params="?Sep"><a href="ecmascript-language-lexical-grammar.html#prod-BinaryDigits">BinaryDigits</a><emu-mods><emu-params>[?Sep]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="BinaryDigits" params="Sep" type="lexical">
|
|
<emu-nt params="Sep"><a href="ecmascript-language-lexical-grammar.html#prod-BinaryDigits">BinaryDigits</a><emu-mods><emu-params>[Sep]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="5fhui2lc">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-BinaryDigit">BinaryDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="zwtkasqs">
|
|
<emu-nt params="?Sep"><a href="ecmascript-language-lexical-grammar.html#prod-BinaryDigits">BinaryDigits</a><emu-mods><emu-params>[?Sep]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-BinaryDigit">BinaryDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="klsleygf" constraints="+Sep"><emu-constraints>[+Sep]</emu-constraints>
|
|
<emu-nt params="+Sep"><a href="ecmascript-language-lexical-grammar.html#prod-BinaryDigits">BinaryDigits</a><emu-mods><emu-params>[+Sep]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NumericLiteralSeparator">NumericLiteralSeparator</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-BinaryDigit">BinaryDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="BinaryDigit" type="lexical" oneof="">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-BinaryDigit">BinaryDigit</a></emu-nt> <emu-geq>::</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>0</emu-t> <emu-t>1</emu-t></emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="OctalIntegerLiteral" params="Sep" type="lexical">
|
|
<emu-nt params="Sep"><a href="ecmascript-language-lexical-grammar.html#prod-OctalIntegerLiteral">OctalIntegerLiteral</a><emu-mods><emu-params>[Sep]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="bpjym_xs">
|
|
<emu-t>0o</emu-t>
|
|
<emu-nt params="?Sep"><a href="ecmascript-language-lexical-grammar.html#prod-OctalDigits">OctalDigits</a><emu-mods><emu-params>[?Sep]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="otl-ec7z">
|
|
<emu-t>0O</emu-t>
|
|
<emu-nt params="?Sep"><a href="ecmascript-language-lexical-grammar.html#prod-OctalDigits">OctalDigits</a><emu-mods><emu-params>[?Sep]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="OctalDigits" params="Sep" type="lexical">
|
|
<emu-nt params="Sep"><a href="ecmascript-language-lexical-grammar.html#prod-OctalDigits">OctalDigits</a><emu-mods><emu-params>[Sep]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="mbwdu1ji">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-OctalDigit">OctalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="i9v7fkh2">
|
|
<emu-nt params="?Sep"><a href="ecmascript-language-lexical-grammar.html#prod-OctalDigits">OctalDigits</a><emu-mods><emu-params>[?Sep]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-OctalDigit">OctalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="-vh1h3qc" constraints="+Sep"><emu-constraints>[+Sep]</emu-constraints>
|
|
<emu-nt params="+Sep"><a href="ecmascript-language-lexical-grammar.html#prod-OctalDigits">OctalDigits</a><emu-mods><emu-params>[+Sep]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NumericLiteralSeparator">NumericLiteralSeparator</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-OctalDigit">OctalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="LegacyOctalIntegerLiteral" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LegacyOctalIntegerLiteral">LegacyOctalIntegerLiteral</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="rsu9eufh">
|
|
<emu-t>0</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-OctalDigit">OctalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="tx3hz6c8">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LegacyOctalIntegerLiteral">LegacyOctalIntegerLiteral</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-OctalDigit">OctalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="NonOctalDecimalIntegerLiteral" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NonOctalDecimalIntegerLiteral">NonOctalDecimalIntegerLiteral</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="rmz1yyb9">
|
|
<emu-t>0</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NonOctalDigit">NonOctalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="yq78icb2">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LegacyOctalLikeDecimalIntegerLiteral">LegacyOctalLikeDecimalIntegerLiteral</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NonOctalDigit">NonOctalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="qxebmbch">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NonOctalDecimalIntegerLiteral">NonOctalDecimalIntegerLiteral</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="LegacyOctalLikeDecimalIntegerLiteral" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LegacyOctalLikeDecimalIntegerLiteral">LegacyOctalLikeDecimalIntegerLiteral</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="rsu9eufh">
|
|
<emu-t>0</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-OctalDigit">OctalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="sk7h1nbk">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LegacyOctalLikeDecimalIntegerLiteral">LegacyOctalLikeDecimalIntegerLiteral</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-OctalDigit">OctalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="OctalDigit" type="lexical" oneof="">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-OctalDigit">OctalDigit</a></emu-nt> <emu-geq>::</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>0</emu-t> <emu-t>1</emu-t> <emu-t>2</emu-t> <emu-t>3</emu-t> <emu-t>4</emu-t> <emu-t>5</emu-t> <emu-t>6</emu-t> <emu-t>7</emu-t></emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="NonOctalDigit" type="lexical" oneof="">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NonOctalDigit">NonOctalDigit</a></emu-nt> <emu-geq>::</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>8</emu-t> <emu-t>9</emu-t></emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="HexIntegerLiteral" params="Sep" type="lexical">
|
|
<emu-nt params="Sep"><a href="ecmascript-language-lexical-grammar.html#prod-HexIntegerLiteral">HexIntegerLiteral</a><emu-mods><emu-params>[Sep]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="ddiauqlo">
|
|
<emu-t>0x</emu-t>
|
|
<emu-nt params="?Sep"><a href="ecmascript-language-lexical-grammar.html#prod-HexDigits">HexDigits</a><emu-mods><emu-params>[?Sep]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="w-ee7g68">
|
|
<emu-t>0X</emu-t>
|
|
<emu-nt params="?Sep"><a href="ecmascript-language-lexical-grammar.html#prod-HexDigits">HexDigits</a><emu-mods><emu-params>[?Sep]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="HexDigits" params="Sep" type="lexical">
|
|
<emu-nt params="Sep"><a href="ecmascript-language-lexical-grammar.html#prod-HexDigits">HexDigits</a><emu-mods><emu-params>[Sep]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="omskcs0d">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="hbi73qbc">
|
|
<emu-nt params="?Sep"><a href="ecmascript-language-lexical-grammar.html#prod-HexDigits">HexDigits</a><emu-mods><emu-params>[?Sep]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="amg7w4gj" constraints="+Sep"><emu-constraints>[+Sep]</emu-constraints>
|
|
<emu-nt params="+Sep"><a href="ecmascript-language-lexical-grammar.html#prod-HexDigits">HexDigits</a><emu-mods><emu-params>[+Sep]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NumericLiteralSeparator">NumericLiteralSeparator</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="HexDigit" type="lexical" oneof="">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt> <emu-geq>::</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>0</emu-t> <emu-t>1</emu-t> <emu-t>2</emu-t> <emu-t>3</emu-t> <emu-t>4</emu-t> <emu-t>5</emu-t> <emu-t>6</emu-t> <emu-t>7</emu-t> <emu-t>8</emu-t> <emu-t>9</emu-t> <emu-t>a</emu-t> <emu-t>b</emu-t> <emu-t>c</emu-t> <emu-t>d</emu-t> <emu-t>e</emu-t> <emu-t>f</emu-t> <emu-t>A</emu-t> <emu-t>B</emu-t> <emu-t>C</emu-t> <emu-t>D</emu-t> <emu-t>E</emu-t> <emu-t>F</emu-t></emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="StringLiteral" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-StringLiteral">StringLiteral</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="fdix8v-c">
|
|
<emu-t>"</emu-t>
|
|
<emu-nt optional=""><a href="ecmascript-language-lexical-grammar.html#prod-DoubleStringCharacters">DoubleStringCharacters</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>"</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="guyz2t4p">
|
|
<emu-t>'</emu-t>
|
|
<emu-nt optional=""><a href="ecmascript-language-lexical-grammar.html#prod-SingleStringCharacters">SingleStringCharacters</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>'</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="DoubleStringCharacters" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DoubleStringCharacters">DoubleStringCharacters</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="i9q8d_st">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DoubleStringCharacter">DoubleStringCharacter</a></emu-nt>
|
|
<emu-nt optional=""><a href="ecmascript-language-lexical-grammar.html#prod-DoubleStringCharacters">DoubleStringCharacters</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="SingleStringCharacters" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-SingleStringCharacters">SingleStringCharacters</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="f9kevwoi">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-SingleStringCharacter">SingleStringCharacter</a></emu-nt>
|
|
<emu-nt optional=""><a href="ecmascript-language-lexical-grammar.html#prod-SingleStringCharacters">SingleStringCharacters</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="DoubleStringCharacter" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DoubleStringCharacter">DoubleStringCharacter</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="qh-v7bpd">
|
|
<emu-nt><a href="ecmascript-language-source-code.html#prod-SourceCharacter">SourceCharacter</a></emu-nt> <emu-gmod>but not one of <emu-t>"</emu-t> or <emu-t>\</emu-t> or <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt></emu-gmod>
|
|
</emu-rhs>
|
|
<emu-rhs a="eaiqsw9w">
|
|
<emu-gprose><LS></emu-gprose>
|
|
</emu-rhs>
|
|
<emu-rhs a="z8h10fxn">
|
|
<emu-gprose><PS></emu-gprose>
|
|
</emu-rhs>
|
|
<emu-rhs a="6n2njt_x">
|
|
<emu-t>\</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-EscapeSequence">EscapeSequence</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ajkpm2ja">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineContinuation">LineContinuation</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="SingleStringCharacter" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-SingleStringCharacter">SingleStringCharacter</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="xqnh0twg">
|
|
<emu-nt><a href="ecmascript-language-source-code.html#prod-SourceCharacter">SourceCharacter</a></emu-nt> <emu-gmod>but not one of <emu-t>'</emu-t> or <emu-t>\</emu-t> or <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt></emu-gmod>
|
|
</emu-rhs>
|
|
<emu-rhs a="eaiqsw9w">
|
|
<emu-gprose><LS></emu-gprose>
|
|
</emu-rhs>
|
|
<emu-rhs a="z8h10fxn">
|
|
<emu-gprose><PS></emu-gprose>
|
|
</emu-rhs>
|
|
<emu-rhs a="6n2njt_x">
|
|
<emu-t>\</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-EscapeSequence">EscapeSequence</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ajkpm2ja">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineContinuation">LineContinuation</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="LineContinuation" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineContinuation">LineContinuation</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="xik9y9lz">
|
|
<emu-t>\</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminatorSequence">LineTerminatorSequence</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="EscapeSequence" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-EscapeSequence">EscapeSequence</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="6ehvb3kw">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-CharacterEscapeSequence">CharacterEscapeSequence</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="br2d94cy">
|
|
<emu-t>0</emu-t>
|
|
<emu-gann>[lookahead ∉ <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="6mwrfc1u">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LegacyOctalEscapeSequence">LegacyOctalEscapeSequence</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="nv0ui3q7">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NonOctalDecimalEscapeSequence">NonOctalDecimalEscapeSequence</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="qacbhaps">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexEscapeSequence">HexEscapeSequence</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="rl1vvdtr">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-UnicodeEscapeSequence">UnicodeEscapeSequence</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="CharacterEscapeSequence" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-CharacterEscapeSequence">CharacterEscapeSequence</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="desdj6ig">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-SingleEscapeCharacter">SingleEscapeCharacter</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="t5gkmnte">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NonEscapeCharacter">NonEscapeCharacter</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="SingleEscapeCharacter" type="lexical" oneof="">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-SingleEscapeCharacter">SingleEscapeCharacter</a></emu-nt> <emu-geq>::</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>'</emu-t> <emu-t>"</emu-t> <emu-t>\</emu-t> <emu-t>b</emu-t> <emu-t>f</emu-t> <emu-t>n</emu-t> <emu-t>r</emu-t> <emu-t>t</emu-t> <emu-t>v</emu-t></emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="NonEscapeCharacter" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NonEscapeCharacter">NonEscapeCharacter</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="g6xhj53i">
|
|
<emu-nt><a href="ecmascript-language-source-code.html#prod-SourceCharacter">SourceCharacter</a></emu-nt> <emu-gmod>but not one of <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-EscapeCharacter">EscapeCharacter</a></emu-nt> or <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt></emu-gmod>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="EscapeCharacter" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-EscapeCharacter">EscapeCharacter</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="desdj6ig">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-SingleEscapeCharacter">SingleEscapeCharacter</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="s4me4hlz">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="fqodqad9">
|
|
<emu-t>x</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="jc5mvt_f">
|
|
<emu-t>u</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="LegacyOctalEscapeSequence" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LegacyOctalEscapeSequence">LegacyOctalEscapeSequence</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="7ty-i8nt">
|
|
<emu-t>0</emu-t>
|
|
<emu-gann>[lookahead ∈ { <emu-t>8</emu-t>, <emu-t>9</emu-t> }]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="zo2dw1jh">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NonZeroOctalDigit">NonZeroOctalDigit</a></emu-nt>
|
|
<emu-gann>[lookahead ∉ <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-OctalDigit">OctalDigit</a></emu-nt>]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="j1oybrrs">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-ZeroToThree">ZeroToThree</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-OctalDigit">OctalDigit</a></emu-nt>
|
|
<emu-gann>[lookahead ∉ <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-OctalDigit">OctalDigit</a></emu-nt>]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="ci1_zc16">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-FourToSeven">FourToSeven</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-OctalDigit">OctalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="4u5dk78q">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-ZeroToThree">ZeroToThree</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-OctalDigit">OctalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-OctalDigit">OctalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="NonZeroOctalDigit" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NonZeroOctalDigit">NonZeroOctalDigit</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="oqgsby5s">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-OctalDigit">OctalDigit</a></emu-nt> <emu-gmod>but not <emu-t>0</emu-t></emu-gmod>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ZeroToThree" type="lexical" oneof="">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-ZeroToThree">ZeroToThree</a></emu-nt> <emu-geq>::</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>0</emu-t> <emu-t>1</emu-t> <emu-t>2</emu-t> <emu-t>3</emu-t></emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="FourToSeven" type="lexical" oneof="">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-FourToSeven">FourToSeven</a></emu-nt> <emu-geq>::</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>4</emu-t> <emu-t>5</emu-t> <emu-t>6</emu-t> <emu-t>7</emu-t></emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="NonOctalDecimalEscapeSequence" type="lexical" oneof="">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NonOctalDecimalEscapeSequence">NonOctalDecimalEscapeSequence</a></emu-nt> <emu-geq>::</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>8</emu-t> <emu-t>9</emu-t></emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="HexEscapeSequence" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexEscapeSequence">HexEscapeSequence</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="2o-xpa4a">
|
|
<emu-t>x</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="UnicodeEscapeSequence" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-UnicodeEscapeSequence">UnicodeEscapeSequence</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="ghktjvoi" id="prod-yPsTqmeL">
|
|
<emu-t>u</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-Hex4Digits">Hex4Digits</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="uybj7_dt" id="prod-qIqpq7Bo">
|
|
<emu-t>u{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-CodePoint">CodePoint</a></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="Hex4Digits" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-Hex4Digits">Hex4Digits</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="c6jeysfq">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="RegularExpressionLiteral" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionLiteral">RegularExpressionLiteral</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="v3gfo--_" id="prod-6WVj7Zp6">
|
|
<emu-t>/</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionBody">RegularExpressionBody</a></emu-nt>
|
|
<emu-t>/</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionFlags">RegularExpressionFlags</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="RegularExpressionBody" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionBody">RegularExpressionBody</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="u6ewnk3q">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionFirstChar">RegularExpressionFirstChar</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionChars">RegularExpressionChars</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="RegularExpressionChars" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionChars">RegularExpressionChars</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="n7nathbb">
|
|
<emu-gann>[empty]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="qygc7azr">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionChars">RegularExpressionChars</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionChar">RegularExpressionChar</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="RegularExpressionFirstChar" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionFirstChar">RegularExpressionFirstChar</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="2hsmcj0g">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionNonTerminator">RegularExpressionNonTerminator</a></emu-nt> <emu-gmod>but not one of <emu-t>*</emu-t> or <emu-t>\</emu-t> or <emu-t>/</emu-t> or <emu-t>[</emu-t></emu-gmod>
|
|
</emu-rhs>
|
|
<emu-rhs a="njv5p0rd">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionBackslashSequence">RegularExpressionBackslashSequence</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="xmafjorq">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionClass">RegularExpressionClass</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="RegularExpressionChar" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionChar">RegularExpressionChar</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="8mp_fppd">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionNonTerminator">RegularExpressionNonTerminator</a></emu-nt> <emu-gmod>but not one of <emu-t>\</emu-t> or <emu-t>/</emu-t> or <emu-t>[</emu-t></emu-gmod>
|
|
</emu-rhs>
|
|
<emu-rhs a="njv5p0rd">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionBackslashSequence">RegularExpressionBackslashSequence</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="xmafjorq">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionClass">RegularExpressionClass</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="RegularExpressionBackslashSequence" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionBackslashSequence">RegularExpressionBackslashSequence</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="12vrrw1t">
|
|
<emu-t>\</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionNonTerminator">RegularExpressionNonTerminator</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="RegularExpressionNonTerminator" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionNonTerminator">RegularExpressionNonTerminator</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="lvvfp8iw">
|
|
<emu-nt><a href="ecmascript-language-source-code.html#prod-SourceCharacter">SourceCharacter</a></emu-nt> <emu-gmod>but not <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt></emu-gmod>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="RegularExpressionClass" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionClass">RegularExpressionClass</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="tbvecnsu">
|
|
<emu-t>[</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionClassChars">RegularExpressionClassChars</a></emu-nt>
|
|
<emu-t>]</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="RegularExpressionClassChars" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionClassChars">RegularExpressionClassChars</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="n7nathbb">
|
|
<emu-gann>[empty]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="dr3lbtf5">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionClassChars">RegularExpressionClassChars</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionClassChar">RegularExpressionClassChar</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="RegularExpressionClassChar" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionClassChar">RegularExpressionClassChar</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="f9eiuy71">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionNonTerminator">RegularExpressionNonTerminator</a></emu-nt> <emu-gmod>but not one of <emu-t>]</emu-t> or <emu-t>\</emu-t></emu-gmod>
|
|
</emu-rhs>
|
|
<emu-rhs a="njv5p0rd">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionBackslashSequence">RegularExpressionBackslashSequence</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="RegularExpressionFlags" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionFlags">RegularExpressionFlags</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="n7nathbb">
|
|
<emu-gann>[empty]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="9bwye56f">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionFlags">RegularExpressionFlags</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierPartChar">IdentifierPartChar</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="Template" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-Template">Template</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="e_otk8es">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NoSubstitutionTemplate">NoSubstitutionTemplate</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="q5pllvwq">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-TemplateHead">TemplateHead</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="NoSubstitutionTemplate" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NoSubstitutionTemplate">NoSubstitutionTemplate</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="bw9ca6ur">
|
|
<emu-t>`</emu-t>
|
|
<emu-nt optional=""><a href="ecmascript-language-lexical-grammar.html#prod-TemplateCharacters">TemplateCharacters</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>`</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="TemplateHead" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-TemplateHead">TemplateHead</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="v7fy_fdt">
|
|
<emu-t>`</emu-t>
|
|
<emu-nt optional=""><a href="ecmascript-language-lexical-grammar.html#prod-TemplateCharacters">TemplateCharacters</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>${</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="TemplateSubstitutionTail" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-TemplateSubstitutionTail">TemplateSubstitutionTail</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="zlwdxe92">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-TemplateMiddle">TemplateMiddle</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="v_5hijma">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-TemplateTail">TemplateTail</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="TemplateMiddle" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-TemplateMiddle">TemplateMiddle</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="n2nbtpup">
|
|
<emu-t>}</emu-t>
|
|
<emu-nt optional=""><a href="ecmascript-language-lexical-grammar.html#prod-TemplateCharacters">TemplateCharacters</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>${</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="TemplateTail" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-TemplateTail">TemplateTail</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="_o9bwnqb">
|
|
<emu-t>}</emu-t>
|
|
<emu-nt optional=""><a href="ecmascript-language-lexical-grammar.html#prod-TemplateCharacters">TemplateCharacters</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>`</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="TemplateCharacters" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-TemplateCharacters">TemplateCharacters</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="-mjqxz72">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-TemplateCharacter">TemplateCharacter</a></emu-nt>
|
|
<emu-nt optional=""><a href="ecmascript-language-lexical-grammar.html#prod-TemplateCharacters">TemplateCharacters</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="TemplateCharacter" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-TemplateCharacter">TemplateCharacter</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="a8o1qsam">
|
|
<emu-t>$</emu-t>
|
|
<emu-gann>[lookahead ≠ <emu-t>{</emu-t>]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="hva1-ccd">
|
|
<emu-t>\</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-TemplateEscapeSequence">TemplateEscapeSequence</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="amrzzf_i">
|
|
<emu-t>\</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NotEscapeSequence">NotEscapeSequence</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ajkpm2ja">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineContinuation">LineContinuation</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="vegl2qv9">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminatorSequence">LineTerminatorSequence</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="tidqqejp">
|
|
<emu-nt><a href="ecmascript-language-source-code.html#prod-SourceCharacter">SourceCharacter</a></emu-nt> <emu-gmod>but not one of <emu-t>`</emu-t> or <emu-t>\</emu-t> or <emu-t>$</emu-t> or <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt></emu-gmod>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="TemplateEscapeSequence" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-TemplateEscapeSequence">TemplateEscapeSequence</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="6ehvb3kw">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-CharacterEscapeSequence">CharacterEscapeSequence</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="br2d94cy">
|
|
<emu-t>0</emu-t>
|
|
<emu-gann>[lookahead ∉ <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="qacbhaps">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexEscapeSequence">HexEscapeSequence</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="rl1vvdtr">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-UnicodeEscapeSequence">UnicodeEscapeSequence</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="NotEscapeSequence" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NotEscapeSequence">NotEscapeSequence</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="wkfhlj8g">
|
|
<emu-t>0</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ny9edrjl">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt> <emu-gmod>but not <emu-t>0</emu-t></emu-gmod>
|
|
</emu-rhs>
|
|
<emu-rhs a="zz8wwgpo">
|
|
<emu-t>x</emu-t>
|
|
<emu-gann>[lookahead ∉ <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="fwgfqqso">
|
|
<emu-t>x</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>
|
|
<emu-gann>[lookahead ∉ <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="mwyqnw8x">
|
|
<emu-t>u</emu-t>
|
|
<emu-gann>[lookahead ∉ <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>]</emu-gann>
|
|
<emu-gann>[lookahead ≠ <emu-t>{</emu-t>]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="q3eunasx">
|
|
<emu-t>u</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>
|
|
<emu-gann>[lookahead ∉ <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="r2foprbe">
|
|
<emu-t>u</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>
|
|
<emu-gann>[lookahead ∉ <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="esa2zfmr">
|
|
<emu-t>u</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>
|
|
<emu-gann>[lookahead ∉ <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="od14t37t">
|
|
<emu-t>u</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-gann>[lookahead ∉ <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="olgecex1">
|
|
<emu-t>u</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NotCodePoint">NotCodePoint</a></emu-nt>
|
|
<emu-gann>[lookahead ∉ <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="pj_qta32">
|
|
<emu-t>u</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-CodePoint">CodePoint</a></emu-nt>
|
|
<emu-gann>[lookahead ∉ <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigit">HexDigit</a></emu-nt>]</emu-gann>
|
|
<emu-gann>[lookahead ≠ <emu-t>}</emu-t>]</emu-gann>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="NotCodePoint" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NotCodePoint">NotCodePoint</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="iibaj99h">
|
|
<emu-nt params="~Sep"><a href="ecmascript-language-lexical-grammar.html#prod-HexDigits">HexDigits</a><emu-mods><emu-params>[~Sep]</emu-params></emu-mods></emu-nt>
|
|
<emu-gmod>but only if the MV of <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigits">HexDigits</a></emu-nt> > 0x10FFFF</emu-gmod>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="CodePoint" type="lexical">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-CodePoint">CodePoint</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="_cg3azun">
|
|
<emu-nt params="~Sep"><a href="ecmascript-language-lexical-grammar.html#prod-HexDigits">HexDigits</a><emu-mods><emu-params>[~Sep]</emu-params></emu-mods></emu-nt>
|
|
<emu-gmod>but only if the MV of <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexDigits">HexDigits</a></emu-nt> ≤ 0x10FFFF</emu-gmod>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
</emu-annex>
|
|
|
|
<emu-annex id="sec-expressions">
|
|
<h1><span class="secnum">A.2</span> Expressions</h1>
|
|
<emu-production name="IdentifierReference" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-IdentifierReference">IdentifierReference</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="bras6mo_" id="prod-dL7e73Zt">
|
|
<emu-nt><a href="ecmascript-language-expressions.html#prod-Identifier">Identifier</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="zobe2rzz" constraints="~Yield" id="prod-dN4C9Ooo"><emu-constraints>[~Yield]</emu-constraints>
|
|
<emu-t>yield</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="dypijsdc" constraints="~Await" id="prod-iAOJjaxZ"><emu-constraints>[~Await]</emu-constraints>
|
|
<emu-t>await</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="BindingIdentifier" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="bras6mo_" id="prod-5vbjd2EY">
|
|
<emu-nt><a href="ecmascript-language-expressions.html#prod-Identifier">Identifier</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="0d8zyjn8" id="prod-bP3zkqsh">
|
|
<emu-t>yield</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="hx1dvlrw" id="prod-k8G1I2qF">
|
|
<emu-t>await</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="LabelIdentifier" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-LabelIdentifier">LabelIdentifier</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="bras6mo_">
|
|
<emu-nt><a href="ecmascript-language-expressions.html#prod-Identifier">Identifier</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="zobe2rzz" constraints="~Yield" id="prod-aHP0cTnm"><emu-constraints>[~Yield]</emu-constraints>
|
|
<emu-t>yield</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="dypijsdc" constraints="~Await" id="prod-8xe5-4Uo"><emu-constraints>[~Await]</emu-constraints>
|
|
<emu-t>await</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="Identifier">
|
|
<emu-nt><a href="ecmascript-language-expressions.html#prod-Identifier">Identifier</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="v6xddc2h" id="prod-OqjWNqf4">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierName">IdentifierName</a></emu-nt> <emu-gmod>but not <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-ReservedWord">ReservedWord</a></emu-nt></emu-gmod>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="PrimaryExpression" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-PrimaryExpression">PrimaryExpression</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="jo4mwtvh" id="prod-6iVAqhjf">
|
|
<emu-t>this</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="dlsgch-w" id="prod-Qw-BmNvs">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-IdentifierReference">IdentifierReference</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="kul-a19e" id="prod-Sla8Mecg">
|
|
<emu-nt><a href="ecmascript-language-expressions.html#prod-Literal">Literal</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="l8_i0ob3" id="prod-Caejwk3t">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ArrayLiteral">ArrayLiteral</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="7pishiof" id="prod-4t3kIOlY">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ObjectLiteral">ObjectLiteral</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="jc7szv1s" id="prod-SoPEL49Y">
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-FunctionExpression">FunctionExpression</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="jqir3v1i" id="prod-Je5YcOXI">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-ClassExpression">ClassExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="q7f39ayg" id="prod-1wa_TGAR">
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-GeneratorExpression">GeneratorExpression</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="rvibtigb" id="prod-D7ySJoLP">
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-AsyncFunctionExpression">AsyncFunctionExpression</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="naptrn97" id="prod-4BCWI5RW">
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-AsyncGeneratorExpression">AsyncGeneratorExpression</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="mbzy6lvr" id="prod-rfJuuLNW">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-RegularExpressionLiteral">RegularExpressionLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="stpbjyob" id="prod-iJnRUrcY">
|
|
<emu-nt params="?Yield, ?Await, ~Tagged"><a href="ecmascript-language-expressions.html#prod-TemplateLiteral">TemplateLiteral</a><emu-mods><emu-params>[?Yield, ?Await, ~Tagged]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="parencover" id="prod-INZ21P3A">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-CoverParenthesizedExpressionAndArrowParameterList">CoverParenthesizedExpressionAndArrowParameterList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="CoverParenthesizedExpressionAndArrowParameterList" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-CoverParenthesizedExpressionAndArrowParameterList">CoverParenthesizedExpressionAndArrowParameterList</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="ed6ncho6">
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="lyzvfyfb">
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-t>)</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="eormm5tk">
|
|
<emu-t>(</emu-t>
|
|
<emu-t>)</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="pirlsxzm">
|
|
<emu-t>(</emu-t>
|
|
<emu-t>...</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="swpbyn40">
|
|
<emu-t>(</emu-t>
|
|
<emu-t>...</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingPattern">BindingPattern</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="21pbm2tg">
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-t>...</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="qoyfpol8">
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-t>...</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingPattern">BindingPattern</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<p>
|
|
When processing an instance of the production<br>
|
|
<emu-production name="PrimaryExpression" params="Yield, Await" a="parencover" class=" inline" collapsed="">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-PrimaryExpression">PrimaryExpression</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="parencover" id="prod-INZ21P3A">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-CoverParenthesizedExpressionAndArrowParameterList">CoverParenthesizedExpressionAndArrowParameterList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs></emu-production><br>
|
|
the interpretation of <emu-nt id="_ref_24571"><a href="ecmascript-language-expressions.html#prod-CoverParenthesizedExpressionAndArrowParameterList">CoverParenthesizedExpressionAndArrowParameterList</a></emu-nt> is refined using the following grammar:
|
|
</p>
|
|
<emu-production name="ParenthesizedExpression" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-ParenthesizedExpression">ParenthesizedExpression</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="ed6ncho6" id="prod-m5AWMC3P">
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<p> </p>
|
|
<emu-production name="Literal">
|
|
<emu-nt><a href="ecmascript-language-expressions.html#prod-Literal">Literal</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="vphbieby" id="prod-3wWoyoyk">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NullLiteral">NullLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="nqjh_sxl" id="prod-T8-D_rlw">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-BooleanLiteral">BooleanLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="pui0b1rt" id="prod-qwQbursv">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NumericLiteral">NumericLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="xhtltz00" id="prod-JuPoYov6">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-StringLiteral">StringLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ArrayLiteral" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-ArrayLiteral">ArrayLiteral</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="kg5ha7xc" id="prod-oN6pjX9m">
|
|
<emu-t>[</emu-t>
|
|
<emu-nt optional=""><a href="ecmascript-language-expressions.html#prod-Elision">Elision</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>]</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="xwviorlp" id="prod-Y8wRJ4om">
|
|
<emu-t>[</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ElementList">ElementList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>]</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="flt40tbt" id="prod-je9iGq8a">
|
|
<emu-t>[</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ElementList">ElementList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt optional=""><a href="ecmascript-language-expressions.html#prod-Elision">Elision</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>]</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ElementList" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-ElementList">ElementList</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="mg86fhyo" id="prod-nakNeXAG">
|
|
<emu-nt optional=""><a href="ecmascript-language-expressions.html#prod-Elision">Elision</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="bzoasbwv" id="prod-XL4uSEt_">
|
|
<emu-nt optional=""><a href="ecmascript-language-expressions.html#prod-Elision">Elision</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-SpreadElement">SpreadElement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="6ukoiilh" id="prod-rNLR62Va">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ElementList">ElementList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt optional=""><a href="ecmascript-language-expressions.html#prod-Elision">Elision</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="nnao2vfk" id="prod-BSaguLF3">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ElementList">ElementList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt optional=""><a href="ecmascript-language-expressions.html#prod-Elision">Elision</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-SpreadElement">SpreadElement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="Elision">
|
|
<emu-nt><a href="ecmascript-language-expressions.html#prod-Elision">Elision</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="lhh3u7f7" id="prod-UVeRCADp">
|
|
<emu-t>,</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="gg0bjle3" id="prod-lq_Nojbr">
|
|
<emu-nt><a href="ecmascript-language-expressions.html#prod-Elision">Elision</a></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="SpreadElement" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-SpreadElement">SpreadElement</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="tio0yijn" id="prod-H9W06sct">
|
|
<emu-t>...</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ObjectLiteral" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-ObjectLiteral">ObjectLiteral</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="gbpaspne" id="prod-4iBxhmtp">
|
|
<emu-t>{</emu-t>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="qgbbf6iu" id="prod-tbtFUUOH">
|
|
<emu-t>{</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-PropertyDefinitionList">PropertyDefinitionList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="bzhfnkx-" id="prod-k6AQl_P9">
|
|
<emu-t>{</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-PropertyDefinitionList">PropertyDefinitionList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="PropertyDefinitionList" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-PropertyDefinitionList">PropertyDefinitionList</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="m0tgtrnc" id="prod-BIN60s98">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-PropertyDefinition">PropertyDefinition</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="r9tpew-z" id="prod-c72dXkTz">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-PropertyDefinitionList">PropertyDefinitionList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-PropertyDefinition">PropertyDefinition</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="PropertyDefinition" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-PropertyDefinition">PropertyDefinition</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="dlsgch-w" id="prod-_kSpAuMA">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-IdentifierReference">IdentifierReference</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="apwscjmv">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-CoverInitializedName">CoverInitializedName</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="5zrjcx_s" id="prod-Jsxupyj1">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-PropertyName">PropertyName</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>:</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ke2_9p84" id="prod-mDvkFMKq">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-MethodDefinition">MethodDefinition</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="tio0yijn" id="prod-vZMKiSRJ">
|
|
<emu-t>...</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="PropertyName" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-PropertyName">PropertyName</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="5x4jbee2" id="prod-0EhkgOcT">
|
|
<emu-nt><a href="ecmascript-language-expressions.html#prod-LiteralPropertyName">LiteralPropertyName</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="x0s2x3xm" id="prod-vr_cfE7P">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ComputedPropertyName">ComputedPropertyName</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="LiteralPropertyName">
|
|
<emu-nt><a href="ecmascript-language-expressions.html#prod-LiteralPropertyName">LiteralPropertyName</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="drsx4tka" id="prod-j68LXthC">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierName">IdentifierName</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="xhtltz00" id="prod-ueikIsNm">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-StringLiteral">StringLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="pui0b1rt" id="prod-6-SoljXV">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NumericLiteral">NumericLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ComputedPropertyName" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-ComputedPropertyName">ComputedPropertyName</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="48_35zgr" id="prod-V7gahr3e">
|
|
<emu-t>[</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>]</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="CoverInitializedName" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-CoverInitializedName">CoverInitializedName</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="hcdz_xlp">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-IdentifierReference">IdentifierReference</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Initializer">Initializer</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="Initializer" params="In, Yield, Await">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-expressions.html#prod-Initializer">Initializer</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="3gfs5awf" id="prod-P2DNnhoV">
|
|
<emu-t>=</emu-t>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="TemplateLiteral" params="Yield, Await, Tagged">
|
|
<emu-nt params="Yield, Await, Tagged"><a href="ecmascript-language-expressions.html#prod-TemplateLiteral">TemplateLiteral</a><emu-mods><emu-params>[Yield, Await, Tagged]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="e_otk8es" id="prod-d430kMbv">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NoSubstitutionTemplate">NoSubstitutionTemplate</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="8adkeoem" id="prod-t3USkzuD">
|
|
<emu-nt params="?Yield, ?Await, ?Tagged"><a href="ecmascript-language-expressions.html#prod-SubstitutionTemplate">SubstitutionTemplate</a><emu-mods><emu-params>[?Yield, ?Await, ?Tagged]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="SubstitutionTemplate" params="Yield, Await, Tagged">
|
|
<emu-nt params="Yield, Await, Tagged"><a href="ecmascript-language-expressions.html#prod-SubstitutionTemplate">SubstitutionTemplate</a><emu-mods><emu-params>[Yield, Await, Tagged]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="bpr_k7qa" id="prod-nG1t-jNI">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-TemplateHead">TemplateHead</a></emu-nt>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await, ?Tagged"><a href="ecmascript-language-expressions.html#prod-TemplateSpans">TemplateSpans</a><emu-mods><emu-params>[?Yield, ?Await, ?Tagged]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="TemplateSpans" params="Yield, Await, Tagged">
|
|
<emu-nt params="Yield, Await, Tagged"><a href="ecmascript-language-expressions.html#prod-TemplateSpans">TemplateSpans</a><emu-mods><emu-params>[Yield, Await, Tagged]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="v_5hijma" id="prod-MrvlbnHm">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-TemplateTail">TemplateTail</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="3pqtoeeo" id="prod-j0qqWY2p">
|
|
<emu-nt params="?Yield, ?Await, ?Tagged"><a href="ecmascript-language-expressions.html#prod-TemplateMiddleList">TemplateMiddleList</a><emu-mods><emu-params>[?Yield, ?Await, ?Tagged]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-TemplateTail">TemplateTail</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="TemplateMiddleList" params="Yield, Await, Tagged">
|
|
<emu-nt params="Yield, Await, Tagged"><a href="ecmascript-language-expressions.html#prod-TemplateMiddleList">TemplateMiddleList</a><emu-mods><emu-params>[Yield, Await, Tagged]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="23_bspds" id="prod-V4hc4rPI">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-TemplateMiddle">TemplateMiddle</a></emu-nt>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="bdrr0gig" id="prod-PHoLfCK_">
|
|
<emu-nt params="?Yield, ?Await, ?Tagged"><a href="ecmascript-language-expressions.html#prod-TemplateMiddleList">TemplateMiddleList</a><emu-mods><emu-params>[?Yield, ?Await, ?Tagged]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-TemplateMiddle">TemplateMiddle</a></emu-nt>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="MemberExpression" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-MemberExpression">MemberExpression</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="zp2ej-dr" id="prod-RT3Hrl25">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-PrimaryExpression">PrimaryExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="rnalvwun" id="prod-IScPEVPu">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-MemberExpression">MemberExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>[</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>]</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="_qdjqibg" id="prod-BTxM7XK0">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-MemberExpression">MemberExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>.</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierName">IdentifierName</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="46cuzeza" id="prod-hF7lIb25">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-MemberExpression">MemberExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await, +Tagged"><a href="ecmascript-language-expressions.html#prod-TemplateLiteral">TemplateLiteral</a><emu-mods><emu-params>[?Yield, ?Await, +Tagged]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="g9rhupwf" id="prod-gkYgn85G">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-SuperProperty">SuperProperty</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="yb7id2be" id="prod-EZ2BF6v8">
|
|
<emu-nt><a href="ecmascript-language-expressions.html#prod-MetaProperty">MetaProperty</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ufvcifdc" id="prod-BRZkuqi1">
|
|
<emu-t>new</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-MemberExpression">MemberExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Arguments">Arguments</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="4cnbmhao" id="prod-20SfjmEZ">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-MemberExpression">MemberExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>.</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-PrivateIdentifier">PrivateIdentifier</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="SuperProperty" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-SuperProperty">SuperProperty</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="f2abn9oi" id="prod-lWlOKYig">
|
|
<emu-t>super</emu-t>
|
|
<emu-t>[</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>]</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="9pdsslwb" id="prod-6y-_egWQ">
|
|
<emu-t>super</emu-t>
|
|
<emu-t>.</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierName">IdentifierName</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="MetaProperty">
|
|
<emu-nt><a href="ecmascript-language-expressions.html#prod-MetaProperty">MetaProperty</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="czvbijjt">
|
|
<emu-nt><a href="ecmascript-language-expressions.html#prod-NewTarget">NewTarget</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="_cnkj-qp">
|
|
<emu-nt><a href="ecmascript-language-expressions.html#prod-ImportMeta">ImportMeta</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="NewTarget">
|
|
<emu-nt><a href="ecmascript-language-expressions.html#prod-NewTarget">NewTarget</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="0t4hpsv9" id="prod-4bMdCOPa">
|
|
<emu-t>new</emu-t>
|
|
<emu-t>.</emu-t>
|
|
<emu-t>target</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ImportMeta">
|
|
<emu-nt><a href="ecmascript-language-expressions.html#prod-ImportMeta">ImportMeta</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="8myn6frq" id="prod-qIsN6LkP">
|
|
<emu-t>import</emu-t>
|
|
<emu-t>.</emu-t>
|
|
<emu-t>meta</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="NewExpression" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-NewExpression">NewExpression</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="vbcu9jjv">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-MemberExpression">MemberExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="iyf_se48" id="prod-NMg_0YQR">
|
|
<emu-t>new</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-NewExpression">NewExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="CallExpression" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-CallExpression">CallExpression</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="callcover" id="prod-ltrZioVe">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-CoverCallExpressionAndAsyncArrowHead">CoverCallExpressionAndAsyncArrowHead</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="5cynbd7h" id="prod-G9gIp39y">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-SuperCall">SuperCall</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="12avhmhv" id="prod-5bjr6Yqy">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ImportCall">ImportCall</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="zq2ahe82" id="prod-kYvem_87">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-CallExpression">CallExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Arguments">Arguments</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="jan4qzpu" id="prod-Shb6Dgff">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-CallExpression">CallExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>[</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>]</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="8fzekpe0" id="prod-EOA2Fe3-">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-CallExpression">CallExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>.</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierName">IdentifierName</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="xe3ycfgs" id="prod-WPBp76A-">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-CallExpression">CallExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await, +Tagged"><a href="ecmascript-language-expressions.html#prod-TemplateLiteral">TemplateLiteral</a><emu-mods><emu-params>[?Yield, ?Await, +Tagged]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="62npgx0j" id="prod-FwaLgcLH">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-CallExpression">CallExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>.</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-PrivateIdentifier">PrivateIdentifier</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<p>
|
|
When processing an instance of the production<br>
|
|
<emu-production name="CallExpression" params="Yield, Await" a="callcover" class=" inline" collapsed="">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-CallExpression">CallExpression</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="callcover" id="prod-ltrZioVe">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-CoverCallExpressionAndAsyncArrowHead">CoverCallExpressionAndAsyncArrowHead</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs></emu-production><br>
|
|
the interpretation of <emu-nt id="_ref_24572"><a href="ecmascript-language-functions-and-classes.html#prod-CoverCallExpressionAndAsyncArrowHead">CoverCallExpressionAndAsyncArrowHead</a></emu-nt> is refined using the following grammar:
|
|
</p>
|
|
<emu-production name="CallMemberExpression" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-CallMemberExpression">CallMemberExpression</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="90e-xzcw">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-MemberExpression">MemberExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Arguments">Arguments</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<p> </p>
|
|
<emu-production name="SuperCall" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-SuperCall">SuperCall</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="a1uz3ssm" id="prod-qBjKPlc1">
|
|
<emu-t>super</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Arguments">Arguments</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ImportCall" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-ImportCall">ImportCall</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="lxdwtaop" id="prod-k77_OH1u">
|
|
<emu-t>import</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t optional="">,<emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-t>
|
|
<emu-t>)</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="vxyviles" id="prod-nQPLRauX">
|
|
<emu-t>import</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t optional="">,<emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-t>
|
|
<emu-t>)</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="Arguments" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-Arguments">Arguments</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="eormm5tk" id="prod-lgwqNVq7">
|
|
<emu-t>(</emu-t>
|
|
<emu-t>)</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="zoyucce7">
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ArgumentList">ArgumentList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="xsawavht">
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ArgumentList">ArgumentList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-t>)</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ArgumentList" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-ArgumentList">ArgumentList</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="j1moyzsj" id="prod-7tzqa9tS">
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="tio0yijn" id="prod-bq3bMpyK">
|
|
<emu-t>...</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="krcqss7_" id="prod--rnN0MQv">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ArgumentList">ArgumentList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="1ve8zfk_" id="prod-1jakKBk1">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ArgumentList">ArgumentList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-t>...</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="OptionalExpression" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-OptionalExpression">OptionalExpression</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="ecu35e6c" id="prod-AiLVvGnw">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-MemberExpression">MemberExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-OptionalChain">OptionalChain</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="zdg__vw8" id="prod-dfra8X0j">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-CallExpression">CallExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-OptionalChain">OptionalChain</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="w8fdvlpp" id="prod-iAWRBWZp">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-OptionalExpression">OptionalExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-OptionalChain">OptionalChain</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="OptionalChain" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-OptionalChain">OptionalChain</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="8htvkqhl" id="prod-J4fvvwWl">
|
|
<emu-t>?.</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Arguments">Arguments</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="dfjbcotw" id="prod-a5k1i_eU">
|
|
<emu-t>?.</emu-t>
|
|
<emu-t>[</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>]</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="w-4ch2am" id="prod-JoCAeM_3">
|
|
<emu-t>?.</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierName">IdentifierName</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="gddsvrzp">
|
|
<emu-t>?.</emu-t>
|
|
<emu-nt params="?Yield, ?Await, +Tagged"><a href="ecmascript-language-expressions.html#prod-TemplateLiteral">TemplateLiteral</a><emu-mods><emu-params>[?Yield, ?Await, +Tagged]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="0xlnjlpz" id="prod-qtd11XGp">
|
|
<emu-t>?.</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-PrivateIdentifier">PrivateIdentifier</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="mf2i0e3e" id="prod-zMZUOMrf">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-OptionalChain">OptionalChain</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Arguments">Arguments</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="tyrnajyn" id="prod-4aVR1jLh">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-OptionalChain">OptionalChain</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>[</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>]</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="nm82pnnk" id="prod-25V7_u74">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-OptionalChain">OptionalChain</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>.</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierName">IdentifierName</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="i6asyits">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-OptionalChain">OptionalChain</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await, +Tagged"><a href="ecmascript-language-expressions.html#prod-TemplateLiteral">TemplateLiteral</a><emu-mods><emu-params>[?Yield, ?Await, +Tagged]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="tglbsgos" id="prod-MW9Cgivd">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-OptionalChain">OptionalChain</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>.</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-PrivateIdentifier">PrivateIdentifier</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="LeftHandSideExpression" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-LeftHandSideExpression">LeftHandSideExpression</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="qjnhzlak">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-NewExpression">NewExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="hpn2js4d" id="prod-cMsSM13C">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-CallExpression">CallExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="hwcrnmoq" id="prod-xKiE8xPm">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-OptionalExpression">OptionalExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="UpdateExpression" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-UpdateExpression">UpdateExpression</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="t7cmhicy">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-LeftHandSideExpression">LeftHandSideExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="egpm8pw8" id="prod-w05b3u14">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-LeftHandSideExpression">LeftHandSideExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-t>++</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="xaomniuu" id="prod-ij__hpSO">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-LeftHandSideExpression">LeftHandSideExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-t>--</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="4u-mahoy" id="prod-qnUAnDpi">
|
|
<emu-t>++</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-UnaryExpression">UnaryExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="mutg-4fe" id="prod-an6Vm9J4">
|
|
<emu-t>--</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-UnaryExpression">UnaryExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="UnaryExpression" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-UnaryExpression">UnaryExpression</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="lrh_izya">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-UpdateExpression">UpdateExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="qh6tas2i" id="prod-n3f1x4OA">
|
|
<emu-t>delete</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-UnaryExpression">UnaryExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="d3t3dyzd" id="prod-bEnaiUfM">
|
|
<emu-t>void</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-UnaryExpression">UnaryExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="atfv1ezt" id="prod-oOmRMvU8">
|
|
<emu-t>typeof</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-UnaryExpression">UnaryExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="1zx-fkm3" id="prod-55Xz_E0Z">
|
|
<emu-t>+</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-UnaryExpression">UnaryExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="lehvx30i" id="prod-yxAmCDj1">
|
|
<emu-t>-</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-UnaryExpression">UnaryExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="mvwftuyy" id="prod-nw8eIftf">
|
|
<emu-t>~</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-UnaryExpression">UnaryExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="cm7fnuig" id="prod-4lEraLTO">
|
|
<emu-t>!</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-UnaryExpression">UnaryExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="dfqdbsrx" constraints="+Await" id="prod-zVi0tVGF"><emu-constraints>[+Await]</emu-constraints>
|
|
<emu-nt params="?Yield"><a href="ecmascript-language-functions-and-classes.html#prod-AwaitExpression">AwaitExpression</a><emu-mods><emu-params>[?Yield]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ExponentiationExpression" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-ExponentiationExpression">ExponentiationExpression</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="8ws4fpw1">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-UnaryExpression">UnaryExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="sofstrau" id="prod-EEr7dA-y">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-UpdateExpression">UpdateExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>**</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ExponentiationExpression">ExponentiationExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="MultiplicativeExpression" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-MultiplicativeExpression">MultiplicativeExpression</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="z3kjsjvx">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ExponentiationExpression">ExponentiationExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="wkojp9vf" id="prod-D9vYTSYe">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-MultiplicativeExpression">MultiplicativeExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-expressions.html#prod-MultiplicativeOperator">MultiplicativeOperator</a></emu-nt>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ExponentiationExpression">ExponentiationExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="MultiplicativeOperator" oneof="">
|
|
<emu-nt><a href="ecmascript-language-expressions.html#prod-MultiplicativeOperator">MultiplicativeOperator</a></emu-nt> <emu-geq>:</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>*</emu-t> <emu-t>/</emu-t> <emu-t>%</emu-t></emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AdditiveExpression" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-AdditiveExpression">AdditiveExpression</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="9q89e3qa">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-MultiplicativeExpression">MultiplicativeExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="efn1nbbh" id="prod--RZPkEex">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AdditiveExpression">AdditiveExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>+</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-MultiplicativeExpression">MultiplicativeExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="4wmnuxdc" id="prod-XorHFOnH">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AdditiveExpression">AdditiveExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>-</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-MultiplicativeExpression">MultiplicativeExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ShiftExpression" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-ShiftExpression">ShiftExpression</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="5myeagmz">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AdditiveExpression">AdditiveExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ir3jyndh" id="prod-fBlf7SId">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ShiftExpression">ShiftExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t><<</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AdditiveExpression">AdditiveExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="dbgq-61d" id="prod--QVo0NY2">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ShiftExpression">ShiftExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>>></emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AdditiveExpression">AdditiveExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="yxrnku6r" id="prod-VbX7s-GB">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ShiftExpression">ShiftExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>>>></emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AdditiveExpression">AdditiveExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="RelationalExpression" params="In, Yield, Await">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-expressions.html#prod-RelationalExpression">RelationalExpression</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="evzvmihy">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ShiftExpression">ShiftExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="rpncjsrj" id="prod-KibMHocH">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-RelationalExpression">RelationalExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t><</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ShiftExpression">ShiftExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="4ijt0lxw" id="prod-W1sKvRa9">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-RelationalExpression">RelationalExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>></emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ShiftExpression">ShiftExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="raidxcln" id="prod-H5jP53q2">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-RelationalExpression">RelationalExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t><=</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ShiftExpression">ShiftExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="unuuwbsz" id="prod-g28T6iwt">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-RelationalExpression">RelationalExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>>=</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ShiftExpression">ShiftExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="imdygppt" id="prod-abEstsgg">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-RelationalExpression">RelationalExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>instanceof</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ShiftExpression">ShiftExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="tinqflo_" constraints="+In" id="prod-8_yvvfCY"><emu-constraints>[+In]</emu-constraints>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-RelationalExpression">RelationalExpression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>in</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ShiftExpression">ShiftExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="pkiqafbw" constraints="+In" id="prod-3D8w-akN"><emu-constraints>[+In]</emu-constraints>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-PrivateIdentifier">PrivateIdentifier</a></emu-nt>
|
|
<emu-t>in</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ShiftExpression">ShiftExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="EqualityExpression" params="In, Yield, Await">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-expressions.html#prod-EqualityExpression">EqualityExpression</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="kobejffm">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-RelationalExpression">RelationalExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="jxpsr3d-" id="prod-UHCaQLr6">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-EqualityExpression">EqualityExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>==</emu-t>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-RelationalExpression">RelationalExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ipid5oaz" id="prod-J7HEcFq2">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-EqualityExpression">EqualityExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>!=</emu-t>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-RelationalExpression">RelationalExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="f7clru0r" id="prod-ugTHi1aM">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-EqualityExpression">EqualityExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>===</emu-t>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-RelationalExpression">RelationalExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="n5bw_4at" id="prod-6Ta8WxmN">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-EqualityExpression">EqualityExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>!==</emu-t>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-RelationalExpression">RelationalExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="BitwiseANDExpression" params="In, Yield, Await">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-expressions.html#prod-BitwiseANDExpression">BitwiseANDExpression</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="xfq7h3dt">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-EqualityExpression">EqualityExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="lp9tp43u" id="prod-wrUN23HO">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BitwiseANDExpression">BitwiseANDExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>&</emu-t>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-EqualityExpression">EqualityExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="BitwiseXORExpression" params="In, Yield, Await">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-expressions.html#prod-BitwiseXORExpression">BitwiseXORExpression</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="qmrxjqqk">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BitwiseANDExpression">BitwiseANDExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="1xjkk1wc" id="prod-9YKtCpIQ">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BitwiseXORExpression">BitwiseXORExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>^</emu-t>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BitwiseANDExpression">BitwiseANDExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="BitwiseORExpression" params="In, Yield, Await">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-expressions.html#prod-BitwiseORExpression">BitwiseORExpression</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="joxsfj33">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BitwiseXORExpression">BitwiseXORExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="rqrhqzr9" id="prod-AgJdAkQg">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BitwiseORExpression">BitwiseORExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>|</emu-t>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BitwiseXORExpression">BitwiseXORExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="LogicalANDExpression" params="In, Yield, Await">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-expressions.html#prod-LogicalANDExpression">LogicalANDExpression</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="c_3moriv">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BitwiseORExpression">BitwiseORExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="goip25p_" id="prod-vZbQbZtn">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-LogicalANDExpression">LogicalANDExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>&&</emu-t>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BitwiseORExpression">BitwiseORExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="LogicalORExpression" params="In, Yield, Await">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-expressions.html#prod-LogicalORExpression">LogicalORExpression</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="uibyaiez">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-LogicalANDExpression">LogicalANDExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="j2ugmrmi" id="prod-ACEMYh2d">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-LogicalORExpression">LogicalORExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>||</emu-t>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-LogicalANDExpression">LogicalANDExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="CoalesceExpression" params="In, Yield, Await">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-expressions.html#prod-CoalesceExpression">CoalesceExpression</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="0m-knz7v" id="prod-au86anjM">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-CoalesceExpressionHead">CoalesceExpressionHead</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>??</emu-t>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BitwiseORExpression">BitwiseORExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="CoalesceExpressionHead" params="In, Yield, Await">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-expressions.html#prod-CoalesceExpressionHead">CoalesceExpressionHead</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="yrl3tdye">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-CoalesceExpression">CoalesceExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="c_3moriv">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BitwiseORExpression">BitwiseORExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ShortCircuitExpression" params="In, Yield, Await">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-expressions.html#prod-ShortCircuitExpression">ShortCircuitExpression</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="cubbqwpr">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-LogicalORExpression">LogicalORExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="yrl3tdye">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-CoalesceExpression">CoalesceExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ConditionalExpression" params="In, Yield, Await">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-expressions.html#prod-ConditionalExpression">ConditionalExpression</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="hb3dzpk6">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ShortCircuitExpression">ShortCircuitExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="hgxirk7b" id="prod-mR1mZxSc">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ShortCircuitExpression">ShortCircuitExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>?</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>:</emu-t>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AssignmentExpression" params="In, Yield, Await">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="gqos3l-s">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ConditionalExpression">ConditionalExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="xu2tbseh" constraints="+Yield" id="prod-wU5Xsk6s"><emu-constraints>[+Yield]</emu-constraints>
|
|
<emu-nt params="?In, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-YieldExpression">YieldExpression</a><emu-mods><emu-params>[?In, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="m23qgn_1" id="prod-nUwhqikN">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-ArrowFunction">ArrowFunction</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="3h9r6dls" id="prod-iYk5nCgu">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-AsyncArrowFunction">AsyncArrowFunction</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="assignment" id="prod-eXKFjh2J">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-LeftHandSideExpression">LeftHandSideExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>=</emu-t>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="3cvjfmjy" id="prod-shfKC2mw">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-LeftHandSideExpression">LeftHandSideExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-expressions.html#prod-AssignmentOperator">AssignmentOperator</a></emu-nt>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="3bbinvbh" id="prod-hQLdzapj">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-LeftHandSideExpression">LeftHandSideExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>&&=</emu-t>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="kvjhbccb" id="prod-w-48XpMo">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-LeftHandSideExpression">LeftHandSideExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>||=</emu-t>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="cwe0lpyb" id="prod-7NM9KEaO">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-LeftHandSideExpression">LeftHandSideExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>??=</emu-t>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AssignmentOperator" oneof="">
|
|
<emu-nt><a href="ecmascript-language-expressions.html#prod-AssignmentOperator">AssignmentOperator</a></emu-nt> <emu-geq>:</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>*=</emu-t> <emu-t>/=</emu-t> <emu-t>%=</emu-t> <emu-t>+=</emu-t> <emu-t>-=</emu-t> <emu-t><<=</emu-t> <emu-t>>>=</emu-t> <emu-t>>>>=</emu-t> <emu-t>&=</emu-t> <emu-t>^=</emu-t> <emu-t>|=</emu-t> <emu-t>**=</emu-t></emu-rhs>
|
|
</emu-production>
|
|
<p>
|
|
In certain circumstances when processing an instance of the production<br>
|
|
<emu-production name="AssignmentExpression" params="In, Yield, Await" a="assignment" class=" inline" collapsed="">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="assignment" id="prod-eXKFjh2J">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-LeftHandSideExpression">LeftHandSideExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>=</emu-t>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs></emu-production><br>
|
|
the interpretation of <emu-nt id="_ref_24573"><a href="ecmascript-language-expressions.html#prod-LeftHandSideExpression">LeftHandSideExpression</a></emu-nt> is refined using the following grammar:
|
|
</p>
|
|
<emu-production name="AssignmentPattern" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-AssignmentPattern">AssignmentPattern</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="7w04vwf-">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ObjectAssignmentPattern">ObjectAssignmentPattern</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="s2vx3ypi">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-ArrayAssignmentPattern">ArrayAssignmentPattern</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ObjectAssignmentPattern" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-ObjectAssignmentPattern">ObjectAssignmentPattern</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="gbpaspne" id="prod-Ix53lok1">
|
|
<emu-t>{</emu-t>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="bn_ddxqp" id="prod-O0K_hLF1">
|
|
<emu-t>{</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentRestProperty">AssignmentRestProperty</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="ofajfz5a" id="prod-3uSyi6IT">
|
|
<emu-t>{</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentPropertyList">AssignmentPropertyList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="da4bl21i" id="prod-S2lwsZIP">
|
|
<emu-t>{</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentPropertyList">AssignmentPropertyList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt params="?Yield, ?Await" optional=""><a href="ecmascript-language-expressions.html#prod-AssignmentRestProperty">AssignmentRestProperty</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ArrayAssignmentPattern" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-ArrayAssignmentPattern">ArrayAssignmentPattern</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="s4zfck54" id="prod-lF9xCwj2">
|
|
<emu-t>[</emu-t>
|
|
<emu-nt optional=""><a href="ecmascript-language-expressions.html#prod-Elision">Elision</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await" optional=""><a href="ecmascript-language-expressions.html#prod-AssignmentRestElement">AssignmentRestElement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>]</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="mfk9jesb" id="prod-VmyFmgP-">
|
|
<emu-t>[</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentElementList">AssignmentElementList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>]</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="aerg5q0_" id="prod-U5w44WHu">
|
|
<emu-t>[</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentElementList">AssignmentElementList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt optional=""><a href="ecmascript-language-expressions.html#prod-Elision">Elision</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await" optional=""><a href="ecmascript-language-expressions.html#prod-AssignmentRestElement">AssignmentRestElement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>]</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AssignmentRestProperty" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-AssignmentRestProperty">AssignmentRestProperty</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="nliyfd0x" id="prod-mUDd8nHs">
|
|
<emu-t>...</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-DestructuringAssignmentTarget">DestructuringAssignmentTarget</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AssignmentPropertyList" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-AssignmentPropertyList">AssignmentPropertyList</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="d7bxrpgd">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentProperty">AssignmentProperty</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="nzqocjsg" id="prod-Zg8oWRHF">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentPropertyList">AssignmentPropertyList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentProperty">AssignmentProperty</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AssignmentElementList" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-AssignmentElementList">AssignmentElementList</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="516o8fhi" id="prod-3BNUmQs7">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentElisionElement">AssignmentElisionElement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="bvlhnxkw" id="prod-Ud4u6J-Q">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentElementList">AssignmentElementList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentElisionElement">AssignmentElisionElement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AssignmentElisionElement" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-AssignmentElisionElement">AssignmentElisionElement</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="cv0avln-" id="prod-sl9Zadb9">
|
|
<emu-nt optional=""><a href="ecmascript-language-expressions.html#prod-Elision">Elision</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentElement">AssignmentElement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AssignmentProperty" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-AssignmentProperty">AssignmentProperty</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="wctqknbn" id="prod-3q7yGYEa">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-IdentifierReference">IdentifierReference</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="+In, ?Yield, ?Await" optional=""><a href="ecmascript-language-expressions.html#prod-Initializer">Initializer</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="n656b85q" id="prod-v1dWCZ87">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-PropertyName">PropertyName</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>:</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentElement">AssignmentElement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AssignmentElement" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-AssignmentElement">AssignmentElement</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="jfyxygbf" id="prod-qvQWEQo1">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-DestructuringAssignmentTarget">DestructuringAssignmentTarget</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="+In, ?Yield, ?Await" optional=""><a href="ecmascript-language-expressions.html#prod-Initializer">Initializer</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AssignmentRestElement" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-AssignmentRestElement">AssignmentRestElement</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="nliyfd0x" id="prod-DMURMN0m">
|
|
<emu-t>...</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-DestructuringAssignmentTarget">DestructuringAssignmentTarget</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="DestructuringAssignmentTarget" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-expressions.html#prod-DestructuringAssignmentTarget">DestructuringAssignmentTarget</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="t7cmhicy">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-LeftHandSideExpression">LeftHandSideExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<p> </p>
|
|
<emu-production name="Expression" params="In, Yield, Await">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="dtjihnfx" id="prod-0GReIdCH">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ookiljzl" id="prod-lT8vYmn_">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
</emu-annex>
|
|
|
|
<emu-annex id="sec-statements">
|
|
<h1><span class="secnum">A.3</span> Statements</h1>
|
|
<emu-production name="Statement" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Statement">Statement</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="ktzsppzs" id="prod-c1cDILr5">
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-BlockStatement">BlockStatement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="xumq1cs6" id="prod-PfH00D1w">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-VariableStatement">VariableStatement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="cziqu-45" id="prod-YqiTL09y">
|
|
<emu-nt><a href="ecmascript-language-statements-and-declarations.html#prod-EmptyStatement">EmptyStatement</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="vt4s4xgg" id="prod-WCz7iwtm">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-ExpressionStatement">ExpressionStatement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="vpvr9yr3" id="prod-jug3e433">
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-IfStatement">IfStatement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="3kwmhgcn">
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-BreakableStatement">BreakableStatement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="klxmhdlm" id="prod-Ro8XgDsH">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-ContinueStatement">ContinueStatement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="vtt-myod" id="prod-Rrel7YUC">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BreakStatement">BreakStatement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="1sriw0nt" constraints="+Return" id="prod-twdIgE_o"><emu-constraints>[+Return]</emu-constraints>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-ReturnStatement">ReturnStatement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="_gejjak9" id="prod-xepAqppR">
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-WithStatement">WithStatement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="90_gq6ig">
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-LabelledStatement">LabelledStatement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ukgcnqlt" id="prod-GHPcIp4f">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-ThrowStatement">ThrowStatement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="z7s8kfe1" id="prod-HB_2xdti">
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-TryStatement">TryStatement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="iseu28qi" id="prod-bDeNjo3k">
|
|
<emu-nt><a href="ecmascript-language-statements-and-declarations.html#prod-DebuggerStatement">DebuggerStatement</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="Declaration" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-Declaration">Declaration</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="i6hr6ytb">
|
|
<emu-nt params="?Yield, ?Await, ~Default"><a href="ecmascript-language-statements-and-declarations.html#prod-HoistableDeclaration">HoistableDeclaration</a><emu-mods><emu-params>[?Yield, ?Await, ~Default]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="jfshu5d-" id="prod-o4HYrPz3">
|
|
<emu-nt params="?Yield, ?Await, ~Default"><a href="ecmascript-language-functions-and-classes.html#prod-ClassDeclaration">ClassDeclaration</a><emu-mods><emu-params>[?Yield, ?Await, ~Default]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="dl5lsw3w" id="prod-9H9FGeT7">
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-LexicalDeclaration">LexicalDeclaration</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="HoistableDeclaration" params="Yield, Await, Default">
|
|
<emu-nt params="Yield, Await, Default"><a href="ecmascript-language-statements-and-declarations.html#prod-HoistableDeclaration">HoistableDeclaration</a><emu-mods><emu-params>[Yield, Await, Default]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="pm1iqgpt" id="prod-xo77HsL9">
|
|
<emu-nt params="?Yield, ?Await, ?Default"><a href="ecmascript-language-functions-and-classes.html#prod-FunctionDeclaration">FunctionDeclaration</a><emu-mods><emu-params>[?Yield, ?Await, ?Default]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="rhqaxmir" id="prod-dpslEYBS">
|
|
<emu-nt params="?Yield, ?Await, ?Default"><a href="ecmascript-language-functions-and-classes.html#prod-GeneratorDeclaration">GeneratorDeclaration</a><emu-mods><emu-params>[?Yield, ?Await, ?Default]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="3nfjki-g" id="prod-InkDjQLb">
|
|
<emu-nt params="?Yield, ?Await, ?Default"><a href="ecmascript-language-functions-and-classes.html#prod-AsyncFunctionDeclaration">AsyncFunctionDeclaration</a><emu-mods><emu-params>[?Yield, ?Await, ?Default]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="e-_qp6dd" id="prod-OBGQy9cZ">
|
|
<emu-nt params="?Yield, ?Await, ?Default"><a href="ecmascript-language-functions-and-classes.html#prod-AsyncGeneratorDeclaration">AsyncGeneratorDeclaration</a><emu-mods><emu-params>[?Yield, ?Await, ?Default]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="BreakableStatement" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-BreakableStatement">BreakableStatement</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="olmcy7ih" id="prod-IZrgrSFg">
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-IterationStatement">IterationStatement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="uzjzv-di" id="prod-r35GfF0W">
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-SwitchStatement">SwitchStatement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="BlockStatement" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-BlockStatement">BlockStatement</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="zwpfwt4j">
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Block">Block</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="Block" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Block">Block</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="uij9rcu7" id="prod-30nvN6ck">
|
|
<emu-t>{</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return" optional=""><a href="ecmascript-language-statements-and-declarations.html#prod-StatementList">StatementList</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="StatementList" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-StatementList">StatementList</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="owubwn_s">
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-StatementListItem">StatementListItem</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="21clqs0p" id="prod--OFVjnjw">
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-StatementList">StatementList</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-StatementListItem">StatementListItem</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="StatementListItem" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-StatementListItem">StatementListItem</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="septp5sa" id="prod-GHY4Vd3_">
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Statement">Statement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="mtktetk8" id="prod-yYByJL6Z">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-Declaration">Declaration</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="LexicalDeclaration" params="In, Yield, Await">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-LexicalDeclaration">LexicalDeclaration</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="jsmbgalx" id="prod-10DUWE8d">
|
|
<emu-nt><a href="ecmascript-language-statements-and-declarations.html#prod-LetOrConst">LetOrConst</a></emu-nt>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingList">BindingList</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>;</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="LetOrConst">
|
|
<emu-nt><a href="ecmascript-language-statements-and-declarations.html#prod-LetOrConst">LetOrConst</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="laxrvawy" id="prod-7oqY0VPN">
|
|
<emu-t>let</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="nim_d4hb" id="prod-rTRI6GVQ">
|
|
<emu-t>const</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="BindingList" params="In, Yield, Await">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingList">BindingList</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="ned6hkwu">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-LexicalBinding">LexicalBinding</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="fdx7nvya" id="prod-FYQ2Ly4e">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingList">BindingList</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-LexicalBinding">LexicalBinding</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="LexicalBinding" params="In, Yield, Await">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-LexicalBinding">LexicalBinding</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="jut8etgz" id="prod-l3Hg2UJ0">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?In, ?Yield, ?Await" optional=""><a href="ecmascript-language-expressions.html#prod-Initializer">Initializer</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="sdckvxer" id="prod-FppJpMK8">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingPattern">BindingPattern</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Initializer">Initializer</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="VariableStatement" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-VariableStatement">VariableStatement</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="tbwjaldb" id="prod-03w8p9mr">
|
|
<emu-t>var</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-VariableDeclarationList">VariableDeclarationList</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>;</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="VariableDeclarationList" params="In, Yield, Await">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-VariableDeclarationList">VariableDeclarationList</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="ps4sw3ys" id="prod-bXRN6REu">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-VariableDeclaration">VariableDeclaration</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="xsh3skws" id="prod-kqbqpKlK">
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-VariableDeclarationList">VariableDeclarationList</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-VariableDeclaration">VariableDeclaration</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="VariableDeclaration" params="In, Yield, Await">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-VariableDeclaration">VariableDeclaration</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="jut8etgz" id="prod-IeHby7A3">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?In, ?Yield, ?Await" optional=""><a href="ecmascript-language-expressions.html#prod-Initializer">Initializer</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="sdckvxer" id="prod-MhsdViui">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingPattern">BindingPattern</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Initializer">Initializer</a><emu-mods><emu-params>[?In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="BindingPattern" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingPattern">BindingPattern</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="fwd2jmee" id="prod-5GwwFymY">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-ObjectBindingPattern">ObjectBindingPattern</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="hpyn1kot" id="prod-nQ2ZFnUa">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-ArrayBindingPattern">ArrayBindingPattern</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ObjectBindingPattern" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-ObjectBindingPattern">ObjectBindingPattern</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="gbpaspne" id="prod-Zq1KBCx2">
|
|
<emu-t>{</emu-t>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="u51ece_j" id="prod-5lmgiaFr">
|
|
<emu-t>{</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingRestProperty">BindingRestProperty</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="sd_sxlxl" id="prod-xrMoI6uo">
|
|
<emu-t>{</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingPropertyList">BindingPropertyList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="98sthfnw" id="prod-ZImPf3XQ">
|
|
<emu-t>{</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingPropertyList">BindingPropertyList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt params="?Yield, ?Await" optional=""><a href="ecmascript-language-statements-and-declarations.html#prod-BindingRestProperty">BindingRestProperty</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ArrayBindingPattern" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-ArrayBindingPattern">ArrayBindingPattern</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="82yazf9m" id="prod-GTLtfjt0">
|
|
<emu-t>[</emu-t>
|
|
<emu-nt optional=""><a href="ecmascript-language-expressions.html#prod-Elision">Elision</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await" optional=""><a href="ecmascript-language-statements-and-declarations.html#prod-BindingRestElement">BindingRestElement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>]</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="tz2jlcig">
|
|
<emu-t>[</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingElementList">BindingElementList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>]</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="ezfh7oge" id="prod-ZEEMEcAo">
|
|
<emu-t>[</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingElementList">BindingElementList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt optional=""><a href="ecmascript-language-expressions.html#prod-Elision">Elision</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await" optional=""><a href="ecmascript-language-statements-and-declarations.html#prod-BindingRestElement">BindingRestElement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>]</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="BindingRestProperty" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingRestProperty">BindingRestProperty</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="nldxez3v" id="prod-ltwW708a">
|
|
<emu-t>...</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="BindingPropertyList" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingPropertyList">BindingPropertyList</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="8baidhkc">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingProperty">BindingProperty</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ewlfehxq" id="prod-TkJ_upuv">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingPropertyList">BindingPropertyList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingProperty">BindingProperty</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="BindingElementList" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingElementList">BindingElementList</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="lpaw4nny">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingElisionElement">BindingElisionElement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="5z8zw101" id="prod-QAGJVJ9v">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingElementList">BindingElementList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingElisionElement">BindingElisionElement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="BindingElisionElement" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingElisionElement">BindingElisionElement</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="5jbcqvdg" id="prod-eAKFkNTn">
|
|
<emu-nt optional=""><a href="ecmascript-language-expressions.html#prod-Elision">Elision</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingElement">BindingElement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="BindingProperty" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingProperty">BindingProperty</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="01jnavb_" id="prod-P9s8hLuP">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-SingleNameBinding">SingleNameBinding</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="xcksc8qh" id="prod-VmvTFDAY">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-PropertyName">PropertyName</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>:</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingElement">BindingElement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="BindingElement" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingElement">BindingElement</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="01jnavb_">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-SingleNameBinding">SingleNameBinding</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="eyv5t9mz" id="prod-qY39_uPQ">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingPattern">BindingPattern</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="+In, ?Yield, ?Await" optional=""><a href="ecmascript-language-expressions.html#prod-Initializer">Initializer</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="SingleNameBinding" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-SingleNameBinding">SingleNameBinding</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="mg7mmvow" id="prod-8lbkfoVZ">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="+In, ?Yield, ?Await" optional=""><a href="ecmascript-language-expressions.html#prod-Initializer">Initializer</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="BindingRestElement" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingRestElement">BindingRestElement</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="nldxez3v" id="prod-0fOwNHr-">
|
|
<emu-t>...</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="lb7grnzq" id="prod-iBHkClE5">
|
|
<emu-t>...</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingPattern">BindingPattern</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="EmptyStatement">
|
|
<emu-nt><a href="ecmascript-language-statements-and-declarations.html#prod-EmptyStatement">EmptyStatement</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="sg2sawim" id="prod-hl28S5p6">
|
|
<emu-t>;</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ExpressionStatement" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-ExpressionStatement">ExpressionStatement</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="nmo0iroq" id="prod-XGPiPhtM">
|
|
<emu-gann>[lookahead ∉ { <emu-t>{</emu-t>, <emu-t>function</emu-t>, <emu-t>async</emu-t>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-t>function</emu-t>, <emu-t>class</emu-t>, <emu-t>let</emu-t>
|
|
<emu-t>[</emu-t> }]</emu-gann>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>;</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="IfStatement" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-IfStatement">IfStatement</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="gvkksvw-" id="prod-_lf1EvXT">
|
|
<emu-t>if</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Statement">Statement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>else</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Statement">Statement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="x9p_cd-n" id="prod--e2u-nCd">
|
|
<emu-t>if</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Statement">Statement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
<emu-gann>[lookahead ≠ <emu-t>else</emu-t>]</emu-gann>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="IterationStatement" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-IterationStatement">IterationStatement</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="cfhtf2jt" id="prod-nthWw5bM">
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-DoWhileStatement">DoWhileStatement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="v6obhs7z" id="prod-J0YbLQ2x">
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-WhileStatement">WhileStatement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="cito49hq" id="prod-r-Sjm4F3">
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-ForStatement">ForStatement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ysjy7ne3" id="prod-Q0CapowH">
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-ForInOfStatement">ForInOfStatement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="DoWhileStatement" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-DoWhileStatement">DoWhileStatement</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="eiknjnpu" id="prod-9vnoeXX4">
|
|
<emu-t>do</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Statement">Statement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>while</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-t>;</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="WhileStatement" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-WhileStatement">WhileStatement</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="awcw0xuh" id="prod-Tx40AFG0">
|
|
<emu-t>while</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Statement">Statement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ForStatement" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-ForStatement">ForStatement</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="honbm3zg" id="prod-NvPgd2yM">
|
|
<emu-t>for</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-gann>[lookahead ≠ <emu-t>let</emu-t>
|
|
<emu-t>[</emu-t>]</emu-gann>
|
|
<emu-nt params="~In, ?Yield, ?Await" optional=""><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[~In, ?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>;</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await" optional=""><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>;</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await" optional=""><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Statement">Statement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="frhzdc45" id="prod-pYXfSJG_">
|
|
<emu-t>for</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-t>var</emu-t>
|
|
<emu-nt params="~In, ?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-VariableDeclarationList">VariableDeclarationList</a><emu-mods><emu-params>[~In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>;</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await" optional=""><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>;</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await" optional=""><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Statement">Statement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ibe-o3pw" id="prod-0Y0bZAvD">
|
|
<emu-t>for</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="~In, ?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-LexicalDeclaration">LexicalDeclaration</a><emu-mods><emu-params>[~In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="+In, ?Yield, ?Await" optional=""><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>;</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await" optional=""><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Statement">Statement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ForInOfStatement" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-ForInOfStatement">ForInOfStatement</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="w0xbna_a" id="prod-Za8VIr4f">
|
|
<emu-t>for</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-gann>[lookahead ≠ <emu-t>let</emu-t>
|
|
<emu-t>[</emu-t>]</emu-gann>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-LeftHandSideExpression">LeftHandSideExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>in</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Statement">Statement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="7ml0tbdi" id="prod-_N8Q-kim">
|
|
<emu-t>for</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-t>var</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-ForBinding">ForBinding</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>in</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Statement">Statement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="zchtsyje" id="prod-xutvwaXc">
|
|
<emu-t>for</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-ForDeclaration">ForDeclaration</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>in</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Statement">Statement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="e8xfsfow" id="prod-nLtPS4oB">
|
|
<emu-t>for</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-gann>[lookahead ∉ { <emu-t>let</emu-t>, <emu-t>async</emu-t>
|
|
<emu-t>of</emu-t> }]</emu-gann>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-LeftHandSideExpression">LeftHandSideExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>of</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Statement">Statement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="58n_2ihn" id="prod-M1zjKbr6">
|
|
<emu-t>for</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-t>var</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-ForBinding">ForBinding</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>of</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Statement">Statement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="pfvjbka1" id="prod-EoyoF5LI">
|
|
<emu-t>for</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-ForDeclaration">ForDeclaration</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>of</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Statement">Statement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="oprokwwm" constraints="+Await" id="prod-ReDwT2-b"><emu-constraints>[+Await]</emu-constraints>
|
|
<emu-t>for</emu-t>
|
|
<emu-t>await</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-gann>[lookahead ≠ <emu-t>let</emu-t>]</emu-gann>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-LeftHandSideExpression">LeftHandSideExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>of</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Statement">Statement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="9bsmrb_a" constraints="+Await" id="prod-ut_uoPzp"><emu-constraints>[+Await]</emu-constraints>
|
|
<emu-t>for</emu-t>
|
|
<emu-t>await</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-t>var</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-ForBinding">ForBinding</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>of</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Statement">Statement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="fxca1-1x" constraints="+Await" id="prod-jY1gwM9V"><emu-constraints>[+Await]</emu-constraints>
|
|
<emu-t>for</emu-t>
|
|
<emu-t>await</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-ForDeclaration">ForDeclaration</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>of</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Statement">Statement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ForDeclaration" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-ForDeclaration">ForDeclaration</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="k6i8qvu4" id="prod-ygJ0cdk1">
|
|
<emu-nt><a href="ecmascript-language-statements-and-declarations.html#prod-LetOrConst">LetOrConst</a></emu-nt>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-ForBinding">ForBinding</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ForBinding" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-ForBinding">ForBinding</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="ir-rfjfi" id="prod-gwk9Iaq2">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="nridwfya" id="prod-rDLkyb_q">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingPattern">BindingPattern</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ContinueStatement" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-ContinueStatement">ContinueStatement</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="6qppgxyk" id="prod-rfM2mnQY">
|
|
<emu-t>continue</emu-t>
|
|
<emu-t>;</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="fiwlh1nt" id="prod-w6m19zWs">
|
|
<emu-t>continue</emu-t>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-LabelIdentifier">LabelIdentifier</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>;</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="BreakStatement" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BreakStatement">BreakStatement</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="tlip5zkt" id="prod-Jyx4vreG">
|
|
<emu-t>break</emu-t>
|
|
<emu-t>;</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="nio0l2c9" id="prod-_aoH2Ltk">
|
|
<emu-t>break</emu-t>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-LabelIdentifier">LabelIdentifier</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>;</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ReturnStatement" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-ReturnStatement">ReturnStatement</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="cykzgrgr" id="prod-zZYaGxQ8">
|
|
<emu-t>return</emu-t>
|
|
<emu-t>;</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="tybfdyhl" id="prod-TbDZIC37">
|
|
<emu-t>return</emu-t>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>;</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="WithStatement" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-WithStatement">WithStatement</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="lo7bccts" id="prod-3HlNX-pI">
|
|
<emu-t>with</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Statement">Statement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="SwitchStatement" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-SwitchStatement">SwitchStatement</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="drlywp4w" id="prod-3xRnqKfC">
|
|
<emu-t>switch</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-CaseBlock">CaseBlock</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="CaseBlock" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-CaseBlock">CaseBlock</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="v-h2atfk" id="prod-q66ZlOHI">
|
|
<emu-t>{</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return" optional=""><a href="ecmascript-language-statements-and-declarations.html#prod-CaseClauses">CaseClauses</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="00sitdqr" id="prod-JuWwIrcZ">
|
|
<emu-t>{</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return" optional=""><a href="ecmascript-language-statements-and-declarations.html#prod-CaseClauses">CaseClauses</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-DefaultClause">DefaultClause</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await, ?Return" optional=""><a href="ecmascript-language-statements-and-declarations.html#prod-CaseClauses">CaseClauses</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="CaseClauses" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-CaseClauses">CaseClauses</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="xpjvtgza">
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-CaseClause">CaseClause</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="8r6dchoz" id="prod-sjZo1Z65">
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-CaseClauses">CaseClauses</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-CaseClause">CaseClause</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="CaseClause" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-CaseClause">CaseClause</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="zpq23qtn" id="prod-A-5Q_6I5">
|
|
<emu-t>case</emu-t>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>:</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return" optional=""><a href="ecmascript-language-statements-and-declarations.html#prod-StatementList">StatementList</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="DefaultClause" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-DefaultClause">DefaultClause</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="djnlaxcj" id="prod-HPF3iA_C">
|
|
<emu-t>default</emu-t>
|
|
<emu-t>:</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return" optional=""><a href="ecmascript-language-statements-and-declarations.html#prod-StatementList">StatementList</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="LabelledStatement" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-LabelledStatement">LabelledStatement</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="vhxkapdt" id="prod-0GG8m5VC">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-LabelIdentifier">LabelIdentifier</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>:</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-LabelledItem">LabelledItem</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="LabelledItem" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-LabelledItem">LabelledItem</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="septp5sa" id="prod-YaWmIZ1c">
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Statement">Statement</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="d0nwjyav" id="prod-GPTeOVBJ">
|
|
<emu-nt params="?Yield, ?Await, ~Default"><a href="ecmascript-language-functions-and-classes.html#prod-FunctionDeclaration">FunctionDeclaration</a><emu-mods><emu-params>[?Yield, ?Await, ~Default]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ThrowStatement" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-ThrowStatement">ThrowStatement</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="q_cybpdb" id="prod-E5ckYtCh">
|
|
<emu-t>throw</emu-t>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-nt params="+In, ?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Expression">Expression</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>;</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="TryStatement" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-TryStatement">TryStatement</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="eqx7gx8m" id="prod-wD-TPYub">
|
|
<emu-t>try</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Block">Block</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Catch">Catch</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ayio9dod" id="prod-EYIEedje">
|
|
<emu-t>try</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Block">Block</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Finally">Finally</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="yfzmez3t" id="prod-cfkI0NCS">
|
|
<emu-t>try</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Block">Block</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Catch">Catch</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Finally">Finally</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="Catch" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Catch">Catch</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="gk6mks18" id="prod-IbvHsEaf">
|
|
<emu-t>catch</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-CatchParameter">CatchParameter</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Block">Block</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="vi_srlx8" id="prod-ybInUotF">
|
|
<emu-t>catch</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Block">Block</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="Finally" params="Yield, Await, Return">
|
|
<emu-nt params="Yield, Await, Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Finally">Finally</a><emu-mods><emu-params>[Yield, Await, Return]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="e9akqlxo">
|
|
<emu-t>finally</emu-t>
|
|
<emu-nt params="?Yield, ?Await, ?Return"><a href="ecmascript-language-statements-and-declarations.html#prod-Block">Block</a><emu-mods><emu-params>[?Yield, ?Await, ?Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="CatchParameter" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-statements-and-declarations.html#prod-CatchParameter">CatchParameter</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="ir-rfjfi">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="nridwfya">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingPattern">BindingPattern</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="DebuggerStatement">
|
|
<emu-nt><a href="ecmascript-language-statements-and-declarations.html#prod-DebuggerStatement">DebuggerStatement</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="ns5hclvt" id="prod-Kx8jxmHA">
|
|
<emu-t>debugger</emu-t>
|
|
<emu-t>;</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
</emu-annex>
|
|
|
|
<emu-annex id="sec-functions-and-classes">
|
|
<h1><span class="secnum">A.4</span> Functions and Classes</h1>
|
|
<emu-production name="UniqueFormalParameters" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-UniqueFormalParameters">UniqueFormalParameters</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="kat5sugn">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameters">FormalParameters</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="FormalParameters" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameters">FormalParameters</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="n7nathbb" id="prod-L6HGhDG8">
|
|
<emu-gann>[empty]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="xs94btl2" id="prod-gUzIea_C">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-FunctionRestParameter">FunctionRestParameter</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="5f3rxyqw">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameterList">FormalParameterList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="wdsulm_w">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameterList">FormalParameterList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="yh9ahvuw" id="prod-aTWifksv">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameterList">FormalParameterList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-FunctionRestParameter">FunctionRestParameter</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="FormalParameterList" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameterList">FormalParameterList</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="3qhu-4tu" id="prod-NNXqGrU3">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameter">FormalParameter</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="mlncfkxh" id="prod-7NFUmaIc">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameterList">FormalParameterList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameter">FormalParameter</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="FunctionRestParameter" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-FunctionRestParameter">FunctionRestParameter</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="iw2hthb9">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingRestElement">BindingRestElement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="FormalParameter" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameter">FormalParameter</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="xpmoewcq" id="prod-H68ZoagN">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-statements-and-declarations.html#prod-BindingElement">BindingElement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="FunctionDeclaration" params="Yield, Await, Default">
|
|
<emu-nt params="Yield, Await, Default"><a href="ecmascript-language-functions-and-classes.html#prod-FunctionDeclaration">FunctionDeclaration</a><emu-mods><emu-params>[Yield, Await, Default]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="fal2s0ab" id="prod-lEQdX6hk">
|
|
<emu-t>function</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="~Yield, ~Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameters">FormalParameters</a><emu-mods><emu-params>[~Yield, ~Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt params="~Yield, ~Await"><a href="ecmascript-language-functions-and-classes.html#prod-FunctionBody">FunctionBody</a><emu-mods><emu-params>[~Yield, ~Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="_ww4ynxp" constraints="+Default" id="prod-eqpHaG0r"><emu-constraints>[+Default]</emu-constraints>
|
|
<emu-t>function</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="~Yield, ~Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameters">FormalParameters</a><emu-mods><emu-params>[~Yield, ~Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt params="~Yield, ~Await"><a href="ecmascript-language-functions-and-classes.html#prod-FunctionBody">FunctionBody</a><emu-mods><emu-params>[~Yield, ~Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="FunctionExpression">
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-FunctionExpression">FunctionExpression</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="h6r9zk3c" id="prod--zvLR38c">
|
|
<emu-t>function</emu-t>
|
|
<emu-nt params="~Yield, ~Await" optional=""><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[~Yield, ~Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="~Yield, ~Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameters">FormalParameters</a><emu-mods><emu-params>[~Yield, ~Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt params="~Yield, ~Await"><a href="ecmascript-language-functions-and-classes.html#prod-FunctionBody">FunctionBody</a><emu-mods><emu-params>[~Yield, ~Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="FunctionBody" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-FunctionBody">FunctionBody</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="gljyayfs" id="prod-CKMymB_i">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-FunctionStatementList">FunctionStatementList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="FunctionStatementList" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-FunctionStatementList">FunctionStatementList</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="ime6-pzo" id="prod-WeOYFNsx">
|
|
<emu-nt params="?Yield, ?Await, +Return" optional=""><a href="ecmascript-language-statements-and-declarations.html#prod-StatementList">StatementList</a><emu-mods><emu-params>[?Yield, ?Await, +Return]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ArrowFunction" params="In, Yield, Await">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-ArrowFunction">ArrowFunction</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="c-igjs-g" id="prod-AtXUMYu3">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-ArrowParameters">ArrowParameters</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-t>=></emu-t>
|
|
<emu-nt params="?In"><a href="ecmascript-language-functions-and-classes.html#prod-ConciseBody">ConciseBody</a><emu-mods><emu-params>[?In]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ArrowParameters" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-ArrowParameters">ArrowParameters</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="ir-rfjfi" id="prod-7Fo_GcBM">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="parencover" id="prod-W9higncN">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-CoverParenthesizedExpressionAndArrowParameterList">CoverParenthesizedExpressionAndArrowParameterList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ConciseBody" params="In">
|
|
<emu-nt params="In"><a href="ecmascript-language-functions-and-classes.html#prod-ConciseBody">ConciseBody</a><emu-mods><emu-params>[In]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="eofx7fcb" id="prod-UOsd7muB">
|
|
<emu-gann>[lookahead ≠ <emu-t>{</emu-t>]</emu-gann>
|
|
<emu-nt params="?In, ~Await"><a href="ecmascript-language-functions-and-classes.html#prod-ExpressionBody">ExpressionBody</a><emu-mods><emu-params>[?In, ~Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="b3uvs-pa" id="prod-c6cxJePv">
|
|
<emu-t>{</emu-t>
|
|
<emu-nt params="~Yield, ~Await"><a href="ecmascript-language-functions-and-classes.html#prod-FunctionBody">FunctionBody</a><emu-mods><emu-params>[~Yield, ~Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ExpressionBody" params="In, Await">
|
|
<emu-nt params="In, Await"><a href="ecmascript-language-functions-and-classes.html#prod-ExpressionBody">ExpressionBody</a><emu-mods><emu-params>[In, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="ickgdpbs" id="prod-Eaqym5cf">
|
|
<emu-nt params="?In, ~Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[?In, ~Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<p>
|
|
When processing an instance of the production<br>
|
|
<emu-production name="ArrowParameters" params="Yield, Await" a="parencover" class=" inline" collapsed="">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-ArrowParameters">ArrowParameters</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="parencover" id="prod-W9higncN">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-CoverParenthesizedExpressionAndArrowParameterList">CoverParenthesizedExpressionAndArrowParameterList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs></emu-production><br>
|
|
the interpretation of <emu-nt id="_ref_24574"><a href="ecmascript-language-expressions.html#prod-CoverParenthesizedExpressionAndArrowParameterList">CoverParenthesizedExpressionAndArrowParameterList</a></emu-nt> is refined using the following grammar:
|
|
</p>
|
|
<emu-production name="ArrowFormalParameters" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-ArrowFormalParameters">ArrowFormalParameters</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="t1yas6ob">
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-UniqueFormalParameters">UniqueFormalParameters</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<p> </p>
|
|
<emu-production name="AsyncArrowFunction" params="In, Yield, Await">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-AsyncArrowFunction">AsyncArrowFunction</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="u1dc5ef3" id="prod-YIoJOc1p">
|
|
<emu-t>async</emu-t>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-nt params="?Yield"><a href="ecmascript-language-functions-and-classes.html#prod-AsyncArrowBindingIdentifier">AsyncArrowBindingIdentifier</a><emu-mods><emu-params>[?Yield]</emu-params></emu-mods></emu-nt>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-t>=></emu-t>
|
|
<emu-nt params="?In"><a href="ecmascript-language-functions-and-classes.html#prod-AsyncConciseBody">AsyncConciseBody</a><emu-mods><emu-params>[?In]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="callcover" id="prod-WTX_aban">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-CoverCallExpressionAndAsyncArrowHead">CoverCallExpressionAndAsyncArrowHead</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-t>=></emu-t>
|
|
<emu-nt params="?In"><a href="ecmascript-language-functions-and-classes.html#prod-AsyncConciseBody">AsyncConciseBody</a><emu-mods><emu-params>[?In]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AsyncConciseBody" params="In">
|
|
<emu-nt params="In"><a href="ecmascript-language-functions-and-classes.html#prod-AsyncConciseBody">AsyncConciseBody</a><emu-mods><emu-params>[In]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="bpu3_ipt" id="prod-Dfs5WPuP">
|
|
<emu-gann>[lookahead ≠ <emu-t>{</emu-t>]</emu-gann>
|
|
<emu-nt params="?In, +Await"><a href="ecmascript-language-functions-and-classes.html#prod-ExpressionBody">ExpressionBody</a><emu-mods><emu-params>[?In, +Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="bm-b5ose" id="prod-Kq4Uu2cU">
|
|
<emu-t>{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-AsyncFunctionBody">AsyncFunctionBody</a></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AsyncArrowBindingIdentifier" params="Yield">
|
|
<emu-nt params="Yield"><a href="ecmascript-language-functions-and-classes.html#prod-AsyncArrowBindingIdentifier">AsyncArrowBindingIdentifier</a><emu-mods><emu-params>[Yield]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="yuozsg2r" id="prod-I7oDJnBY">
|
|
<emu-nt params="?Yield, +Await"><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[?Yield, +Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="CoverCallExpressionAndAsyncArrowHead" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-CoverCallExpressionAndAsyncArrowHead">CoverCallExpressionAndAsyncArrowHead</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="90e-xzcw" id="prod-HT-vtkeW">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-MemberExpression">MemberExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-Arguments">Arguments</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<p>
|
|
When processing an instance of the production<br>
|
|
<emu-production name="AsyncArrowFunction" params="In, Yield, Await" a="callcover" class=" inline" collapsed="">
|
|
<emu-nt params="In, Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-AsyncArrowFunction">AsyncArrowFunction</a><emu-mods><emu-params>[In, Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="callcover" id="prod-WTX_aban">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-CoverCallExpressionAndAsyncArrowHead">CoverCallExpressionAndAsyncArrowHead</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-t>=></emu-t>
|
|
<emu-nt params="?In"><a href="ecmascript-language-functions-and-classes.html#prod-AsyncConciseBody">AsyncConciseBody</a><emu-mods><emu-params>[?In]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs></emu-production><br>
|
|
the interpretation of <emu-nt id="_ref_24575"><a href="ecmascript-language-functions-and-classes.html#prod-CoverCallExpressionAndAsyncArrowHead">CoverCallExpressionAndAsyncArrowHead</a></emu-nt> is refined using the following grammar:
|
|
</p>
|
|
<emu-production name="AsyncArrowHead">
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-AsyncArrowHead">AsyncArrowHead</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="ydfl_ghb">
|
|
<emu-t>async</emu-t>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-nt params="~Yield, +Await"><a href="ecmascript-language-functions-and-classes.html#prod-ArrowFormalParameters">ArrowFormalParameters</a><emu-mods><emu-params>[~Yield, +Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<p> </p>
|
|
<emu-production name="MethodDefinition" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-MethodDefinition">MethodDefinition</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="zqbkmnaz" id="prod-BMcTBp4V">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-ClassElementName">ClassElementName</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="~Yield, ~Await"><a href="ecmascript-language-functions-and-classes.html#prod-UniqueFormalParameters">UniqueFormalParameters</a><emu-mods><emu-params>[~Yield, ~Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt params="~Yield, ~Await"><a href="ecmascript-language-functions-and-classes.html#prod-FunctionBody">FunctionBody</a><emu-mods><emu-params>[~Yield, ~Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="uivm4t30" id="prod-p-hcBiIQ">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-GeneratorMethod">GeneratorMethod</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="l4rbqexd" id="prod-SD1i1opG">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-AsyncMethod">AsyncMethod</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="2nx0uygb" id="prod-y0j2wcW4">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-AsyncGeneratorMethod">AsyncGeneratorMethod</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="jjr3zjnj" id="prod-SnKN_cew">
|
|
<emu-t>get</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-ClassElementName">ClassElementName</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>(</emu-t>
|
|
<emu-t>)</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt params="~Yield, ~Await"><a href="ecmascript-language-functions-and-classes.html#prod-FunctionBody">FunctionBody</a><emu-mods><emu-params>[~Yield, ~Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="lrypae2k" id="prod-nWs7csn9">
|
|
<emu-t>set</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-ClassElementName">ClassElementName</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-PropertySetParameterList">PropertySetParameterList</a></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt params="~Yield, ~Await"><a href="ecmascript-language-functions-and-classes.html#prod-FunctionBody">FunctionBody</a><emu-mods><emu-params>[~Yield, ~Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="PropertySetParameterList">
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-PropertySetParameterList">PropertySetParameterList</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="p0ls10ix" id="prod-KB8f5_em">
|
|
<emu-nt params="~Yield, ~Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameter">FormalParameter</a><emu-mods><emu-params>[~Yield, ~Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="GeneratorDeclaration" params="Yield, Await, Default">
|
|
<emu-nt params="Yield, Await, Default"><a href="ecmascript-language-functions-and-classes.html#prod-GeneratorDeclaration">GeneratorDeclaration</a><emu-mods><emu-params>[Yield, Await, Default]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="56abocni" id="prod-oJNsRhfl">
|
|
<emu-t>function</emu-t>
|
|
<emu-t>*</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="+Yield, ~Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameters">FormalParameters</a><emu-mods><emu-params>[+Yield, ~Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-GeneratorBody">GeneratorBody</a></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="gcxlonl8" constraints="+Default" id="prod-bWfHg6Xe"><emu-constraints>[+Default]</emu-constraints>
|
|
<emu-t>function</emu-t>
|
|
<emu-t>*</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="+Yield, ~Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameters">FormalParameters</a><emu-mods><emu-params>[+Yield, ~Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-GeneratorBody">GeneratorBody</a></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="GeneratorExpression">
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-GeneratorExpression">GeneratorExpression</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="zsu4etlj" id="prod-haubt72j">
|
|
<emu-t>function</emu-t>
|
|
<emu-t>*</emu-t>
|
|
<emu-nt params="+Yield, ~Await" optional=""><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[+Yield, ~Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="+Yield, ~Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameters">FormalParameters</a><emu-mods><emu-params>[+Yield, ~Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-GeneratorBody">GeneratorBody</a></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="GeneratorMethod" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-GeneratorMethod">GeneratorMethod</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="s6ntmoac" id="prod-8GV2khgE">
|
|
<emu-t>*</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-ClassElementName">ClassElementName</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="+Yield, ~Await"><a href="ecmascript-language-functions-and-classes.html#prod-UniqueFormalParameters">UniqueFormalParameters</a><emu-mods><emu-params>[+Yield, ~Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-GeneratorBody">GeneratorBody</a></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="GeneratorBody">
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-GeneratorBody">GeneratorBody</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="quvqn30c" id="prod-PKmJj3Nf">
|
|
<emu-nt params="+Yield, ~Await"><a href="ecmascript-language-functions-and-classes.html#prod-FunctionBody">FunctionBody</a><emu-mods><emu-params>[+Yield, ~Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="YieldExpression" params="In, Await">
|
|
<emu-nt params="In, Await"><a href="ecmascript-language-functions-and-classes.html#prod-YieldExpression">YieldExpression</a><emu-mods><emu-params>[In, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="0d8zyjn8" id="prod-Ldhpu6QZ">
|
|
<emu-t>yield</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="alznzlpx" id="prod-eT7GKT7i">
|
|
<emu-t>yield</emu-t>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-nt params="?In, +Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[?In, +Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="mrbi6v84" id="prod-iAdFfqlf">
|
|
<emu-t>yield</emu-t>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-t>*</emu-t>
|
|
<emu-nt params="?In, +Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[?In, +Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AsyncGeneratorDeclaration" params="Yield, Await, Default">
|
|
<emu-nt params="Yield, Await, Default"><a href="ecmascript-language-functions-and-classes.html#prod-AsyncGeneratorDeclaration">AsyncGeneratorDeclaration</a><emu-mods><emu-params>[Yield, Await, Default]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="vxevrvwx" id="prod-cOKIJmRw">
|
|
<emu-t>async</emu-t>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-t>function</emu-t>
|
|
<emu-t>*</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="+Yield, +Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameters">FormalParameters</a><emu-mods><emu-params>[+Yield, +Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-AsyncGeneratorBody">AsyncGeneratorBody</a></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="zdnckwse" constraints="+Default" id="prod-1L17zU6t"><emu-constraints>[+Default]</emu-constraints>
|
|
<emu-t>async</emu-t>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-t>function</emu-t>
|
|
<emu-t>*</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="+Yield, +Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameters">FormalParameters</a><emu-mods><emu-params>[+Yield, +Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-AsyncGeneratorBody">AsyncGeneratorBody</a></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AsyncGeneratorExpression">
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-AsyncGeneratorExpression">AsyncGeneratorExpression</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="yh0wbqjf" id="prod-s18yr2Ij">
|
|
<emu-t>async</emu-t>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-t>function</emu-t>
|
|
<emu-t>*</emu-t>
|
|
<emu-nt params="+Yield, +Await" optional=""><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[+Yield, +Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="+Yield, +Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameters">FormalParameters</a><emu-mods><emu-params>[+Yield, +Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-AsyncGeneratorBody">AsyncGeneratorBody</a></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AsyncGeneratorMethod" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-AsyncGeneratorMethod">AsyncGeneratorMethod</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="bojlwy10" id="prod-ceV74b-L">
|
|
<emu-t>async</emu-t>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-t>*</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-ClassElementName">ClassElementName</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="+Yield, +Await"><a href="ecmascript-language-functions-and-classes.html#prod-UniqueFormalParameters">UniqueFormalParameters</a><emu-mods><emu-params>[+Yield, +Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-AsyncGeneratorBody">AsyncGeneratorBody</a></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AsyncGeneratorBody">
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-AsyncGeneratorBody">AsyncGeneratorBody</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="zqmkrekv" id="prod-9f9S8TE_">
|
|
<emu-nt params="+Yield, +Await"><a href="ecmascript-language-functions-and-classes.html#prod-FunctionBody">FunctionBody</a><emu-mods><emu-params>[+Yield, +Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AsyncFunctionDeclaration" params="Yield, Await, Default">
|
|
<emu-nt params="Yield, Await, Default"><a href="ecmascript-language-functions-and-classes.html#prod-AsyncFunctionDeclaration">AsyncFunctionDeclaration</a><emu-mods><emu-params>[Yield, Await, Default]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="9rildsyw" id="prod-iAuKx0s9">
|
|
<emu-t>async</emu-t>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-t>function</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="~Yield, +Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameters">FormalParameters</a><emu-mods><emu-params>[~Yield, +Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-AsyncFunctionBody">AsyncFunctionBody</a></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="_vbcugdo" constraints="+Default" id="prod-TaHP58mu"><emu-constraints>[+Default]</emu-constraints>
|
|
<emu-t>async</emu-t>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-t>function</emu-t>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="~Yield, +Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameters">FormalParameters</a><emu-mods><emu-params>[~Yield, +Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-AsyncFunctionBody">AsyncFunctionBody</a></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AsyncFunctionExpression">
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-AsyncFunctionExpression">AsyncFunctionExpression</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="mviccgpw" id="prod-LFCRNt3l">
|
|
<emu-t>async</emu-t>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-t>function</emu-t>
|
|
<emu-nt params="~Yield, +Await" optional=""><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[~Yield, +Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="~Yield, +Await"><a href="ecmascript-language-functions-and-classes.html#prod-FormalParameters">FormalParameters</a><emu-mods><emu-params>[~Yield, +Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-AsyncFunctionBody">AsyncFunctionBody</a></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AsyncMethod" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-AsyncMethod">AsyncMethod</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="tzooi3sy" id="prod-80co-gZ6">
|
|
<emu-t>async</emu-t>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-ClassElementName">ClassElementName</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="~Yield, +Await"><a href="ecmascript-language-functions-and-classes.html#prod-UniqueFormalParameters">UniqueFormalParameters</a><emu-mods><emu-params>[~Yield, +Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-AsyncFunctionBody">AsyncFunctionBody</a></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AsyncFunctionBody">
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-AsyncFunctionBody">AsyncFunctionBody</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="j_tcfidx" id="prod-LKwCGkpu">
|
|
<emu-nt params="~Yield, +Await"><a href="ecmascript-language-functions-and-classes.html#prod-FunctionBody">FunctionBody</a><emu-mods><emu-params>[~Yield, +Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AwaitExpression" params="Yield">
|
|
<emu-nt params="Yield"><a href="ecmascript-language-functions-and-classes.html#prod-AwaitExpression">AwaitExpression</a><emu-mods><emu-params>[Yield]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="wzxw5xwu" id="prod-daps6IoT">
|
|
<emu-t>await</emu-t>
|
|
<emu-nt params="?Yield, +Await"><a href="ecmascript-language-expressions.html#prod-UnaryExpression">UnaryExpression</a><emu-mods><emu-params>[?Yield, +Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassDeclaration" params="Yield, Await, Default">
|
|
<emu-nt params="Yield, Await, Default"><a href="ecmascript-language-functions-and-classes.html#prod-ClassDeclaration">ClassDeclaration</a><emu-mods><emu-params>[Yield, Await, Default]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="r-8ix7mw" id="prod-kd27yk51">
|
|
<emu-t>class</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-ClassTail">ClassTail</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="eish3c1z" constraints="+Default" id="prod-bStNnwN_"><emu-constraints>[+Default]</emu-constraints>
|
|
<emu-t>class</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-ClassTail">ClassTail</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassExpression" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-ClassExpression">ClassExpression</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="3vemrlhb" id="prod-Vthx67sj">
|
|
<emu-t>class</emu-t>
|
|
<emu-nt params="?Yield, ?Await" optional=""><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-ClassTail">ClassTail</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassTail" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-ClassTail">ClassTail</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="0tcpjpju" id="prod-mIr25y7h">
|
|
<emu-nt params="?Yield, ?Await" optional=""><a href="ecmascript-language-functions-and-classes.html#prod-ClassHeritage">ClassHeritage</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt params="?Yield, ?Await" optional=""><a href="ecmascript-language-functions-and-classes.html#prod-ClassBody">ClassBody</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassHeritage" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-ClassHeritage">ClassHeritage</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="eyngn05c">
|
|
<emu-t>extends</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-LeftHandSideExpression">LeftHandSideExpression</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassBody" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-ClassBody">ClassBody</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="hi6rf-a8" id="prod-VFbPG7Xd">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-ClassElementList">ClassElementList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassElementList" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-ClassElementList">ClassElementList</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="l7zmtagw" id="prod-haKPgLO7">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-ClassElement">ClassElement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ga1dtfdq" id="prod-sKhHHXFQ">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-ClassElementList">ClassElementList</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-ClassElement">ClassElement</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassElement" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-ClassElement">ClassElement</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="ke2_9p84" id="prod-NjP_487X">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-MethodDefinition">MethodDefinition</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="a0i06csv" id="prod-0XtyXojL">
|
|
<emu-t>static</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-MethodDefinition">MethodDefinition</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="guxzmt6t" id="prod-RVH9JhqU">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-FieldDefinition">FieldDefinition</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>;</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="w56q4hpj" id="prod-8cGH1X5O">
|
|
<emu-t>static</emu-t>
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-FieldDefinition">FieldDefinition</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>;</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="2ui-f2qn" id="prod-MThA5IaK">
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-ClassStaticBlock">ClassStaticBlock</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="sg2sawim" id="prod-40k8u1X0">
|
|
<emu-t>;</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="FieldDefinition" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-FieldDefinition">FieldDefinition</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="tlc4azd3" id="prod-qdC94hXo">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-functions-and-classes.html#prod-ClassElementName">ClassElementName</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="+In, ?Yield, ?Await" optional=""><a href="ecmascript-language-expressions.html#prod-Initializer">Initializer</a><emu-mods><emu-params>[+In, ?Yield, ?Await]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassElementName" params="Yield, Await">
|
|
<emu-nt params="Yield, Await"><a href="ecmascript-language-functions-and-classes.html#prod-ClassElementName">ClassElementName</a><emu-mods><emu-params>[Yield, Await]</emu-params></emu-mods></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="jbcjyldj" id="prod-KVWS267v">
|
|
<emu-nt params="?Yield, ?Await"><a href="ecmascript-language-expressions.html#prod-PropertyName">PropertyName</a><emu-mods><emu-params>[?Yield, ?Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ie2-zc1c" id="prod-yD9JWieS">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-PrivateIdentifier">PrivateIdentifier</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassStaticBlock">
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-ClassStaticBlock">ClassStaticBlock</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="hv6hopt7" id="prod-qUwUqfkW">
|
|
<emu-t>static</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-ClassStaticBlockBody">ClassStaticBlockBody</a></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassStaticBlockBody">
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-ClassStaticBlockBody">ClassStaticBlockBody</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="oh0jsomm" id="prod-BArMnydQ">
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-ClassStaticBlockStatementList">ClassStaticBlockStatementList</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassStaticBlockStatementList">
|
|
<emu-nt><a href="ecmascript-language-functions-and-classes.html#prod-ClassStaticBlockStatementList">ClassStaticBlockStatementList</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="7wzunuv6" id="prod-uVY-nrQL">
|
|
<emu-nt params="~Yield, +Await, ~Return" optional=""><a href="ecmascript-language-statements-and-declarations.html#prod-StatementList">StatementList</a><emu-mods><emu-params>[~Yield, +Await, ~Return]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
</emu-annex>
|
|
|
|
<emu-annex id="sec-scripts-and-modules">
|
|
<h1><span class="secnum">A.5</span> Scripts and Modules</h1>
|
|
<emu-production name="Script">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-Script">Script</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="cmjfjhkc" id="prod-JhWenwzh">
|
|
<emu-nt optional=""><a href="ecmascript-language-scripts-and-modules.html#prod-ScriptBody">ScriptBody</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ScriptBody">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ScriptBody">ScriptBody</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="mn4pemzx" id="prod-0cNJefq0">
|
|
<emu-nt params="~Yield, ~Await, ~Return"><a href="ecmascript-language-statements-and-declarations.html#prod-StatementList">StatementList</a><emu-mods><emu-params>[~Yield, ~Await, ~Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="Module">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-Module">Module</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="uvsblmsd" id="prod-7jzzWh1g">
|
|
<emu-nt optional=""><a href="ecmascript-language-scripts-and-modules.html#prod-ModuleBody">ModuleBody</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ModuleBody">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ModuleBody">ModuleBody</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="iqenfemp" id="prod-jN7l5yAN">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ModuleItemList">ModuleItemList</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ModuleItemList">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ModuleItemList">ModuleItemList</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="ap7dhqxm" id="prod-AoB9QhTO">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ModuleItem">ModuleItem</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="dd23jrxs" id="prod-GXF21Ewo">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ModuleItemList">ModuleItemList</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ModuleItem">ModuleItem</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ModuleItem">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ModuleItem">ModuleItem</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="4fwtd8-6" id="prod-E3Y7C_Ei">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ImportDeclaration">ImportDeclaration</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ky6bsn7x" id="prod-IobLK26D">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ExportDeclaration">ExportDeclaration</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="qtwquiug" id="prod-hV3VZEve">
|
|
<emu-nt params="~Yield, +Await, ~Return"><a href="ecmascript-language-statements-and-declarations.html#prod-StatementListItem">StatementListItem</a><emu-mods><emu-params>[~Yield, +Await, ~Return]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ModuleExportName">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ModuleExportName">ModuleExportName</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="drsx4tka" id="prod-hD8TcowF">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierName">IdentifierName</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="xhtltz00" id="prod-50n3LPul">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-StringLiteral">StringLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ImportDeclaration">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ImportDeclaration">ImportDeclaration</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="3jk_0iim" id="prod-z-GN-HIp">
|
|
<emu-t>import</emu-t>
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ImportClause">ImportClause</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-FromClause">FromClause</a></emu-nt>
|
|
<emu-nt optional=""><a href="ecmascript-language-scripts-and-modules.html#prod-WithClause">WithClause</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>;</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="wzi3qp4_" id="prod-OCPQ4qHa">
|
|
<emu-t>import</emu-t>
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ModuleSpecifier">ModuleSpecifier</a></emu-nt>
|
|
<emu-nt optional=""><a href="ecmascript-language-scripts-and-modules.html#prod-WithClause">WithClause</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>;</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ImportClause">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ImportClause">ImportClause</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="oi8izote">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ImportedDefaultBinding">ImportedDefaultBinding</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="81tm-dw4">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-NameSpaceImport">NameSpaceImport</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="zfagpfvq">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-NamedImports">NamedImports</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="y9r1l58g" id="prod-kEa0XgB6">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ImportedDefaultBinding">ImportedDefaultBinding</a></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-NameSpaceImport">NameSpaceImport</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ih8rgsdx" id="prod-wyOKxI9w">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ImportedDefaultBinding">ImportedDefaultBinding</a></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-NamedImports">NamedImports</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ImportedDefaultBinding">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ImportedDefaultBinding">ImportedDefaultBinding</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="vt7awvcp" id="prod-XHs8lcig">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ImportedBinding">ImportedBinding</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="NameSpaceImport">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-NameSpaceImport">NameSpaceImport</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="t2qf80pb" id="prod-AScJop1Y">
|
|
<emu-t>*</emu-t>
|
|
<emu-t>as</emu-t>
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ImportedBinding">ImportedBinding</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="NamedImports">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-NamedImports">NamedImports</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="gbpaspne" id="prod-SkqVKtrZ">
|
|
<emu-t>{</emu-t>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="g1js-lhi">
|
|
<emu-t>{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ImportsList">ImportsList</a></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="bxjtogxx">
|
|
<emu-t>{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ImportsList">ImportsList</a></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="FromClause">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-FromClause">FromClause</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="rev6es22">
|
|
<emu-t>from</emu-t>
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ModuleSpecifier">ModuleSpecifier</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ImportsList">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ImportsList">ImportsList</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="upllvvnq">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ImportSpecifier">ImportSpecifier</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ggcfvgot" id="prod-UCgvcMcb">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ImportsList">ImportsList</a></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ImportSpecifier">ImportSpecifier</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ImportSpecifier">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ImportSpecifier">ImportSpecifier</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="vt7awvcp" id="prod-z0N66GR4">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ImportedBinding">ImportedBinding</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="nso-0w0x" id="prod-7GW8ul0v">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ModuleExportName">ModuleExportName</a></emu-nt>
|
|
<emu-t>as</emu-t>
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ImportedBinding">ImportedBinding</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ModuleSpecifier">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ModuleSpecifier">ModuleSpecifier</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="xhtltz00">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-StringLiteral">StringLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ImportedBinding">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ImportedBinding">ImportedBinding</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="ni7cnis3">
|
|
<emu-nt params="~Yield, +Await"><a href="ecmascript-language-expressions.html#prod-BindingIdentifier">BindingIdentifier</a><emu-mods><emu-params>[~Yield, +Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="WithClause">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-WithClause">WithClause</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="f2ll3iev" id="prod-xLj2bJln">
|
|
<emu-t>with</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="o54eack7" id="prod-d4roO8vu">
|
|
<emu-t>with</emu-t>
|
|
<emu-t>{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-WithEntries">WithEntries</a></emu-nt>
|
|
<emu-t optional="">,<emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-t>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="WithEntries">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-WithEntries">WithEntries</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="km78hpv7" id="prod-0HE4RviZ">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-AttributeKey">AttributeKey</a></emu-nt>
|
|
<emu-t>:</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-StringLiteral">StringLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="eu8tt0zo" id="prod-oClSJ6kb">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-AttributeKey">AttributeKey</a></emu-nt>
|
|
<emu-t>:</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-StringLiteral">StringLiteral</a></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-WithEntries">WithEntries</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AttributeKey">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-AttributeKey">AttributeKey</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="drsx4tka" id="prod-OoOZVSpA">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierName">IdentifierName</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="xhtltz00" id="prod-CstywuHG">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-StringLiteral">StringLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ExportDeclaration">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ExportDeclaration">ExportDeclaration</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="gperhudl" id="prod-HJoNzJ3e">
|
|
<emu-t>export</emu-t>
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ExportFromClause">ExportFromClause</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-FromClause">FromClause</a></emu-nt>
|
|
<emu-nt optional=""><a href="ecmascript-language-scripts-and-modules.html#prod-WithClause">WithClause</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-t>;</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="j2lh_kda" id="prod---2Mdo2Q">
|
|
<emu-t>export</emu-t>
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-NamedExports">NamedExports</a></emu-nt>
|
|
<emu-t>;</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="rudz_osj" id="prod-w_WAVAwX">
|
|
<emu-t>export</emu-t>
|
|
<emu-nt params="~Yield, +Await"><a href="ecmascript-language-statements-and-declarations.html#prod-VariableStatement">VariableStatement</a><emu-mods><emu-params>[~Yield, +Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="cshvsnoo" id="prod-60Xh0dpZ">
|
|
<emu-t>export</emu-t>
|
|
<emu-nt params="~Yield, +Await"><a href="ecmascript-language-statements-and-declarations.html#prod-Declaration">Declaration</a><emu-mods><emu-params>[~Yield, +Await]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="pkwjy2r6" id="prod-bE4rfMak">
|
|
<emu-t>export</emu-t>
|
|
<emu-t>default</emu-t>
|
|
<emu-nt params="~Yield, +Await, +Default"><a href="ecmascript-language-statements-and-declarations.html#prod-HoistableDeclaration">HoistableDeclaration</a><emu-mods><emu-params>[~Yield, +Await, +Default]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="hf5nsghg" id="prod-KPFnW3Lq">
|
|
<emu-t>export</emu-t>
|
|
<emu-t>default</emu-t>
|
|
<emu-nt params="~Yield, +Await, +Default"><a href="ecmascript-language-functions-and-classes.html#prod-ClassDeclaration">ClassDeclaration</a><emu-mods><emu-params>[~Yield, +Await, +Default]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="33r7jf_e" id="prod-GUPXSqcT">
|
|
<emu-t>export</emu-t>
|
|
<emu-t>default</emu-t>
|
|
<emu-gann>[lookahead ∉ { <emu-t>function</emu-t>, <emu-t>async</emu-t>
|
|
<emu-gann>[no <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt> here]</emu-gann>
|
|
<emu-t>function</emu-t>, <emu-t>class</emu-t> }]</emu-gann>
|
|
<emu-nt params="+In, ~Yield, +Await"><a href="ecmascript-language-expressions.html#prod-AssignmentExpression">AssignmentExpression</a><emu-mods><emu-params>[+In, ~Yield, +Await]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>;</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ExportFromClause">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ExportFromClause">ExportFromClause</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="sb5ztei-" id="prod-efW0NtUW">
|
|
<emu-t>*</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="hf05qfgg" id="prod-N6rwTU5m">
|
|
<emu-t>*</emu-t>
|
|
<emu-t>as</emu-t>
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ModuleExportName">ModuleExportName</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="_xs5tuve" id="prod-gG1rdVmA">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-NamedExports">NamedExports</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="NamedExports">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-NamedExports">NamedExports</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="gbpaspne" id="prod-tKOro2Xm">
|
|
<emu-t>{</emu-t>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="kbfbtt8z">
|
|
<emu-t>{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ExportsList">ExportsList</a></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="wwyi_qo2">
|
|
<emu-t>{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ExportsList">ExportsList</a></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ExportsList">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ExportsList">ExportsList</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="w1vp78-i">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ExportSpecifier">ExportSpecifier</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="gqfndot_" id="prod-JgWQiNCe">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ExportsList">ExportsList</a></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ExportSpecifier">ExportSpecifier</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ExportSpecifier">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ExportSpecifier">ExportSpecifier</a></emu-nt> <emu-geq>:</emu-geq> <emu-rhs a="6isvnzvv" id="prod-GlqP_AXb">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ModuleExportName">ModuleExportName</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="hbgjxuav" id="prod-ya486nM7">
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ModuleExportName">ModuleExportName</a></emu-nt>
|
|
<emu-t>as</emu-t>
|
|
<emu-nt><a href="ecmascript-language-scripts-and-modules.html#prod-ModuleExportName">ModuleExportName</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
</emu-annex>
|
|
|
|
<emu-annex id="sec-number-conversions">
|
|
<h1><span class="secnum">A.6</span> Number Conversions</h1>
|
|
<emu-production name="StringNumericLiteral" type="regexp">
|
|
<emu-nt><a href="abstract-operations.html#prod-StringNumericLiteral">StringNumericLiteral</a></emu-nt> <emu-geq>:::</emu-geq> <emu-rhs a="mkvpahdu" id="prod-FDwUUOp8">
|
|
<emu-nt optional=""><a href="abstract-operations.html#prod-StrWhiteSpace">StrWhiteSpace</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="_ljdljxm" id="prod-m-6uXikA">
|
|
<emu-nt optional=""><a href="abstract-operations.html#prod-StrWhiteSpace">StrWhiteSpace</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-nt><a href="abstract-operations.html#prod-StrNumericLiteral">StrNumericLiteral</a></emu-nt>
|
|
<emu-nt optional=""><a href="abstract-operations.html#prod-StrWhiteSpace">StrWhiteSpace</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="StrWhiteSpace" type="regexp">
|
|
<emu-nt><a href="abstract-operations.html#prod-StrWhiteSpace">StrWhiteSpace</a></emu-nt> <emu-geq>:::</emu-geq> <emu-rhs a="kw6izkq9">
|
|
<emu-nt><a href="abstract-operations.html#prod-StrWhiteSpaceChar">StrWhiteSpaceChar</a></emu-nt>
|
|
<emu-nt optional=""><a href="abstract-operations.html#prod-StrWhiteSpace">StrWhiteSpace</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="StrWhiteSpaceChar" type="regexp">
|
|
<emu-nt><a href="abstract-operations.html#prod-StrWhiteSpaceChar">StrWhiteSpaceChar</a></emu-nt> <emu-geq>:::</emu-geq> <emu-rhs a="fctcswat">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-WhiteSpace">WhiteSpace</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ozmczrck">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-LineTerminator">LineTerminator</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="StrNumericLiteral" type="regexp">
|
|
<emu-nt><a href="abstract-operations.html#prod-StrNumericLiteral">StrNumericLiteral</a></emu-nt> <emu-geq>:::</emu-geq> <emu-rhs a="2zae4kd4">
|
|
<emu-nt><a href="abstract-operations.html#prod-StrDecimalLiteral">StrDecimalLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="kidoa90l" id="prod-rEUJru-M">
|
|
<emu-nt params="~Sep"><a href="ecmascript-language-lexical-grammar.html#prod-NonDecimalIntegerLiteral">NonDecimalIntegerLiteral</a><emu-mods><emu-params>[~Sep]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="StrDecimalLiteral" type="regexp">
|
|
<emu-nt><a href="abstract-operations.html#prod-StrDecimalLiteral">StrDecimalLiteral</a></emu-nt> <emu-geq>:::</emu-geq> <emu-rhs a="r3_niz0j">
|
|
<emu-nt><a href="abstract-operations.html#prod-StrUnsignedDecimalLiteral">StrUnsignedDecimalLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="o_y5qzvk">
|
|
<emu-t>+</emu-t>
|
|
<emu-nt><a href="abstract-operations.html#prod-StrUnsignedDecimalLiteral">StrUnsignedDecimalLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="1g8bpsll" id="prod-glMHXxnX">
|
|
<emu-t>-</emu-t>
|
|
<emu-nt><a href="abstract-operations.html#prod-StrUnsignedDecimalLiteral">StrUnsignedDecimalLiteral</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="StrUnsignedDecimalLiteral" type="regexp">
|
|
<emu-nt><a href="abstract-operations.html#prod-StrUnsignedDecimalLiteral">StrUnsignedDecimalLiteral</a></emu-nt> <emu-geq>:::</emu-geq> <emu-rhs a="sv6n-gkb" id="prod-QcF4NRmv">
|
|
<emu-t>Infinity</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="bw_ix5cg" id="prod-0clqUBRw">
|
|
<emu-nt params="~Sep"><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigits">DecimalDigits</a><emu-mods><emu-params>[~Sep]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>.</emu-t>
|
|
<emu-nt params="~Sep" optional=""><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigits">DecimalDigits</a><emu-mods><emu-params>[~Sep]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-nt params="~Sep" optional=""><a href="ecmascript-language-lexical-grammar.html#prod-ExponentPart">ExponentPart</a><emu-mods><emu-params>[~Sep]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="m3hgvw0t" id="prod-h9Y6iP78">
|
|
<emu-t>.</emu-t>
|
|
<emu-nt params="~Sep"><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigits">DecimalDigits</a><emu-mods><emu-params>[~Sep]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="~Sep" optional=""><a href="ecmascript-language-lexical-grammar.html#prod-ExponentPart">ExponentPart</a><emu-mods><emu-params>[~Sep]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="eg9cc2yh" id="prod-14bLNUM8">
|
|
<emu-nt params="~Sep"><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigits">DecimalDigits</a><emu-mods><emu-params>[~Sep]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="~Sep" optional=""><a href="ecmascript-language-lexical-grammar.html#prod-ExponentPart">ExponentPart</a><emu-mods><emu-params>[~Sep]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<p>All grammar symbols not explicitly defined by the <emu-nt id="_ref_24576"><a href="abstract-operations.html#prod-StringNumericLiteral">StringNumericLiteral</a></emu-nt> grammar have the definitions used in the <emu-xref href="#sec-literals-numeric-literals" id="_ref_852"><a href="ecmascript-language-lexical-grammar.html#sec-literals-numeric-literals">Lexical Grammar for numeric literals</a></emu-xref>.</p>
|
|
<emu-production name="StringIntegerLiteral" type="regexp">
|
|
<emu-nt><a href="abstract-operations.html#prod-StringIntegerLiteral">StringIntegerLiteral</a></emu-nt> <emu-geq>:::</emu-geq> <emu-rhs a="mkvpahdu">
|
|
<emu-nt optional=""><a href="abstract-operations.html#prod-StrWhiteSpace">StrWhiteSpace</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="7d2sahst">
|
|
<emu-nt optional=""><a href="abstract-operations.html#prod-StrWhiteSpace">StrWhiteSpace</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-nt><a href="abstract-operations.html#prod-StrIntegerLiteral">StrIntegerLiteral</a></emu-nt>
|
|
<emu-nt optional=""><a href="abstract-operations.html#prod-StrWhiteSpace">StrWhiteSpace</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="StrIntegerLiteral" type="regexp">
|
|
<emu-nt><a href="abstract-operations.html#prod-StrIntegerLiteral">StrIntegerLiteral</a></emu-nt> <emu-geq>:::</emu-geq> <emu-rhs a="6uygnxlw">
|
|
<emu-nt params="~Sep"><a href="ecmascript-language-lexical-grammar.html#prod-SignedInteger">SignedInteger</a><emu-mods><emu-params>[~Sep]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="kidoa90l">
|
|
<emu-nt params="~Sep"><a href="ecmascript-language-lexical-grammar.html#prod-NonDecimalIntegerLiteral">NonDecimalIntegerLiteral</a><emu-mods><emu-params>[~Sep]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
</emu-annex>
|
|
|
|
<emu-annex id="sec-time-zone-offset-string-format">
|
|
<h1><span class="secnum">A.7</span> Time Zone Offset String Format</h1>
|
|
<emu-production name="UTCOffset" type="regexp">
|
|
<emu-nt><a href="numbers-and-dates.html#prod-UTCOffset">UTCOffset</a></emu-nt> <emu-geq>:::</emu-geq> <emu-rhs a="rncvrnaw">
|
|
<emu-nt><a href="numbers-and-dates.html#prod-ASCIISign">ASCIISign</a></emu-nt>
|
|
<emu-nt><a href="numbers-and-dates.html#prod-Hour">Hour</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="rr9rer_4">
|
|
<emu-nt><a href="numbers-and-dates.html#prod-ASCIISign">ASCIISign</a></emu-nt>
|
|
<emu-nt><a href="numbers-and-dates.html#prod-Hour">Hour</a></emu-nt>
|
|
<emu-nt params="+Extended"><a href="numbers-and-dates.html#prod-HourSubcomponents">HourSubcomponents</a><emu-mods><emu-params>[+Extended]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="gbqmabjo">
|
|
<emu-nt><a href="numbers-and-dates.html#prod-ASCIISign">ASCIISign</a></emu-nt>
|
|
<emu-nt><a href="numbers-and-dates.html#prod-Hour">Hour</a></emu-nt>
|
|
<emu-nt params="~Extended"><a href="numbers-and-dates.html#prod-HourSubcomponents">HourSubcomponents</a><emu-mods><emu-params>[~Extended]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ASCIISign" type="regexp" oneof="">
|
|
<emu-nt><a href="numbers-and-dates.html#prod-ASCIISign">ASCIISign</a></emu-nt> <emu-geq>:::</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>+</emu-t> <emu-t>-</emu-t></emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="Hour" type="regexp">
|
|
<emu-nt><a href="numbers-and-dates.html#prod-Hour">Hour</a></emu-nt> <emu-geq>:::</emu-geq> <emu-rhs a="wkfhlj8g">
|
|
<emu-t>0</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="5s_tgz36">
|
|
<emu-t>1</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="mglsh1s7">
|
|
<emu-t>20</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="u3ktzh-t">
|
|
<emu-t>21</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="vceuvgrv">
|
|
<emu-t>22</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="mvdsu9ue">
|
|
<emu-t>23</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="HourSubcomponents" params="Extended" type="regexp">
|
|
<emu-nt params="Extended"><a href="numbers-and-dates.html#prod-HourSubcomponents">HourSubcomponents</a><emu-mods><emu-params>[Extended]</emu-params></emu-mods></emu-nt> <emu-geq>:::</emu-geq> <emu-rhs a="mxomrswh">
|
|
<emu-nt params="?Extended"><a href="numbers-and-dates.html#prod-TimeSeparator">TimeSeparator</a><emu-mods><emu-params>[?Extended]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt><a href="numbers-and-dates.html#prod-MinuteSecond">MinuteSecond</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="zgyah94w">
|
|
<emu-nt params="?Extended"><a href="numbers-and-dates.html#prod-TimeSeparator">TimeSeparator</a><emu-mods><emu-params>[?Extended]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt><a href="numbers-and-dates.html#prod-MinuteSecond">MinuteSecond</a></emu-nt>
|
|
<emu-nt params="?Extended"><a href="numbers-and-dates.html#prod-TimeSeparator">TimeSeparator</a><emu-mods><emu-params>[?Extended]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt><a href="numbers-and-dates.html#prod-MinuteSecond">MinuteSecond</a></emu-nt>
|
|
<emu-nt optional=""><a href="numbers-and-dates.html#prod-TemporalDecimalFraction">TemporalDecimalFraction</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="TimeSeparator" params="Extended" type="regexp">
|
|
<emu-nt params="Extended"><a href="numbers-and-dates.html#prod-TimeSeparator">TimeSeparator</a><emu-mods><emu-params>[Extended]</emu-params></emu-mods></emu-nt> <emu-geq>:::</emu-geq> <emu-rhs a="3wlaayve" constraints="+Extended"><emu-constraints>[+Extended]</emu-constraints>
|
|
<emu-t>:</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="dincvcxf" constraints="~Extended"><emu-constraints>[~Extended]</emu-constraints>
|
|
<emu-gann>[empty]</emu-gann>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="MinuteSecond" type="regexp">
|
|
<emu-nt><a href="numbers-and-dates.html#prod-MinuteSecond">MinuteSecond</a></emu-nt> <emu-geq>:::</emu-geq> <emu-rhs a="wkfhlj8g">
|
|
<emu-t>0</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="5s_tgz36">
|
|
<emu-t>1</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="lmn5hwr-">
|
|
<emu-t>2</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="zu_fwhsh">
|
|
<emu-t>3</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="9tumd40b">
|
|
<emu-t>4</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="y55tbjay">
|
|
<emu-t>5</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="TemporalDecimalFraction" type="regexp">
|
|
<emu-nt><a href="numbers-and-dates.html#prod-TemporalDecimalFraction">TemporalDecimalFraction</a></emu-nt> <emu-geq>:::</emu-geq> <emu-rhs a="vyuc8izf">
|
|
<emu-nt><a href="numbers-and-dates.html#prod-TemporalDecimalSeparator">TemporalDecimalSeparator</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="1rj1uct0">
|
|
<emu-nt><a href="numbers-and-dates.html#prod-TemporalDecimalSeparator">TemporalDecimalSeparator</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="mq72xvpv">
|
|
<emu-nt><a href="numbers-and-dates.html#prod-TemporalDecimalSeparator">TemporalDecimalSeparator</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="axw3w-zw">
|
|
<emu-nt><a href="numbers-and-dates.html#prod-TemporalDecimalSeparator">TemporalDecimalSeparator</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="c1lsnrnq">
|
|
<emu-nt><a href="numbers-and-dates.html#prod-TemporalDecimalSeparator">TemporalDecimalSeparator</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="j1y5dzls">
|
|
<emu-nt><a href="numbers-and-dates.html#prod-TemporalDecimalSeparator">TemporalDecimalSeparator</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="xrj7td1-">
|
|
<emu-nt><a href="numbers-and-dates.html#prod-TemporalDecimalSeparator">TemporalDecimalSeparator</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="pgtcsyep">
|
|
<emu-nt><a href="numbers-and-dates.html#prod-TemporalDecimalSeparator">TemporalDecimalSeparator</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="blsu4l5v">
|
|
<emu-nt><a href="numbers-and-dates.html#prod-TemporalDecimalSeparator">TemporalDecimalSeparator</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="TemporalDecimalSeparator" type="regexp" oneof="">
|
|
<emu-nt><a href="numbers-and-dates.html#prod-TemporalDecimalSeparator">TemporalDecimalSeparator</a></emu-nt> <emu-geq>:::</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>.</emu-t> <emu-t>,</emu-t></emu-rhs>
|
|
</emu-production>
|
|
</emu-annex>
|
|
|
|
<emu-annex id="sec-regular-expressions">
|
|
<h1><span class="secnum">A.8</span> Regular Expressions</h1>
|
|
<emu-production name="Pattern" params="UnicodeMode, UnicodeSetsMode, NamedCaptureGroups" type="lexical">
|
|
<emu-nt params="UnicodeMode, UnicodeSetsMode, NamedCaptureGroups"><a href="text-processing.html#prod-Pattern">Pattern</a><emu-mods><emu-params>[UnicodeMode, UnicodeSetsMode, NamedCaptureGroups]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="qykacx9h" id="prod-B7AwVhmt">
|
|
<emu-nt params="?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups"><a href="text-processing.html#prod-Disjunction">Disjunction</a><emu-mods><emu-params>[?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="Disjunction" params="UnicodeMode, UnicodeSetsMode, NamedCaptureGroups" type="lexical">
|
|
<emu-nt params="UnicodeMode, UnicodeSetsMode, NamedCaptureGroups"><a href="text-processing.html#prod-Disjunction">Disjunction</a><emu-mods><emu-params>[UnicodeMode, UnicodeSetsMode, NamedCaptureGroups]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="4qtdrfbm">
|
|
<emu-nt params="?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups"><a href="text-processing.html#prod-Alternative">Alternative</a><emu-mods><emu-params>[?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="tuo0qrl_" id="prod-MCRqOZOt">
|
|
<emu-nt params="?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups"><a href="text-processing.html#prod-Alternative">Alternative</a><emu-mods><emu-params>[?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>|</emu-t>
|
|
<emu-nt params="?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups"><a href="text-processing.html#prod-Disjunction">Disjunction</a><emu-mods><emu-params>[?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="Alternative" params="UnicodeMode, UnicodeSetsMode, NamedCaptureGroups" type="lexical">
|
|
<emu-nt params="UnicodeMode, UnicodeSetsMode, NamedCaptureGroups"><a href="text-processing.html#prod-Alternative">Alternative</a><emu-mods><emu-params>[UnicodeMode, UnicodeSetsMode, NamedCaptureGroups]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="n7nathbb" id="prod-59aIYYAE">
|
|
<emu-gann>[empty]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="tjzxuhbg" id="prod-AWMX5oRX">
|
|
<emu-nt params="?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups"><a href="text-processing.html#prod-Alternative">Alternative</a><emu-mods><emu-params>[?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups"><a href="text-processing.html#prod-Term">Term</a><emu-mods><emu-params>[?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="Term" params="UnicodeMode, UnicodeSetsMode, NamedCaptureGroups" type="lexical">
|
|
<emu-nt params="UnicodeMode, UnicodeSetsMode, NamedCaptureGroups"><a href="text-processing.html#prod-Term">Term</a><emu-mods><emu-params>[UnicodeMode, UnicodeSetsMode, NamedCaptureGroups]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="csnnrw7w" id="prod-R1uQAeY_">
|
|
<emu-nt params="?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups"><a href="text-processing.html#prod-Assertion">Assertion</a><emu-mods><emu-params>[?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="xwd77nef" id="prod-j_jePxdh">
|
|
<emu-nt params="?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups"><a href="text-processing.html#prod-Atom">Atom</a><emu-mods><emu-params>[?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="b5sq7xbb" id="prod-FwIStaHw">
|
|
<emu-nt params="?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups"><a href="text-processing.html#prod-Atom">Atom</a><emu-mods><emu-params>[?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt><a href="text-processing.html#prod-Quantifier">Quantifier</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="Assertion" params="UnicodeMode, UnicodeSetsMode, NamedCaptureGroups" type="lexical">
|
|
<emu-nt params="UnicodeMode, UnicodeSetsMode, NamedCaptureGroups"><a href="text-processing.html#prod-Assertion">Assertion</a><emu-mods><emu-params>[UnicodeMode, UnicodeSetsMode, NamedCaptureGroups]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="5yeieuod" id="prod--UK1vL-o">
|
|
<emu-t>^</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="emlmkqfm" id="prod-2McWu3FN">
|
|
<emu-t>$</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="axxsqknu" id="prod-YjbmHFUC">
|
|
<emu-t>\b</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="lnx_opbv" id="prod-gShCnTuF">
|
|
<emu-t>\B</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="hftgdk-r" id="prod-xKW9miPx">
|
|
<emu-t>(?=</emu-t>
|
|
<emu-nt params="?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups"><a href="text-processing.html#prod-Disjunction">Disjunction</a><emu-mods><emu-params>[?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="6jphpcfp" id="prod-vTbSFHd1">
|
|
<emu-t>(?!</emu-t>
|
|
<emu-nt params="?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups"><a href="text-processing.html#prod-Disjunction">Disjunction</a><emu-mods><emu-params>[?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="mvzyfsps" id="prod-Xp1qSNTG">
|
|
<emu-t>(?<=</emu-t>
|
|
<emu-nt params="?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups"><a href="text-processing.html#prod-Disjunction">Disjunction</a><emu-mods><emu-params>[?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="i9jfixsb" id="prod-UtOyozI6">
|
|
<emu-t>(?<!</emu-t>
|
|
<emu-nt params="?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups"><a href="text-processing.html#prod-Disjunction">Disjunction</a><emu-mods><emu-params>[?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="Quantifier" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-Quantifier">Quantifier</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="dlini2nj" id="prod-tUDOOFuV">
|
|
<emu-nt><a href="text-processing.html#prod-QuantifierPrefix">QuantifierPrefix</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="cwtuervy" id="prod-GZavMceB">
|
|
<emu-nt><a href="text-processing.html#prod-QuantifierPrefix">QuantifierPrefix</a></emu-nt>
|
|
<emu-t>?</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="QuantifierPrefix" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-QuantifierPrefix">QuantifierPrefix</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="sb5ztei-" id="prod-vLv9dnb5">
|
|
<emu-t>*</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="4dclbrwl" id="prod-UgDebVXB">
|
|
<emu-t>+</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="iy1xym7h" id="prod-N4RBWkLM">
|
|
<emu-t>?</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="qn2ibvok" id="prod-kgxh0ghk">
|
|
<emu-t>{</emu-t>
|
|
<emu-nt params="~Sep"><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigits">DecimalDigits</a><emu-mods><emu-params>[~Sep]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="tij_jhmn" id="prod-FM-pL4Gj">
|
|
<emu-t>{</emu-t>
|
|
<emu-nt params="~Sep"><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigits">DecimalDigits</a><emu-mods><emu-params>[~Sep]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="bthfi5pb" id="prod-bLgfIwO4">
|
|
<emu-t>{</emu-t>
|
|
<emu-nt params="~Sep"><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigits">DecimalDigits</a><emu-mods><emu-params>[~Sep]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>,</emu-t>
|
|
<emu-nt params="~Sep"><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigits">DecimalDigits</a><emu-mods><emu-params>[~Sep]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="Atom" params="UnicodeMode, UnicodeSetsMode, NamedCaptureGroups" type="lexical">
|
|
<emu-nt params="UnicodeMode, UnicodeSetsMode, NamedCaptureGroups"><a href="text-processing.html#prod-Atom">Atom</a><emu-mods><emu-params>[UnicodeMode, UnicodeSetsMode, NamedCaptureGroups]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="vv9sxhyc" id="prod-hYVkAeML">
|
|
<emu-nt><a href="text-processing.html#prod-PatternCharacter">PatternCharacter</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="lljkc4zd" id="prod-6UeGTTDU">
|
|
<emu-t>.</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="jhiwossb">
|
|
<emu-t>\</emu-t>
|
|
<emu-nt params="?UnicodeMode, ?NamedCaptureGroups"><a href="text-processing.html#prod-AtomEscape">AtomEscape</a><emu-mods><emu-params>[?UnicodeMode, ?NamedCaptureGroups]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="00eq8hij" id="prod-gdPiaYp4">
|
|
<emu-nt params="?UnicodeMode, ?UnicodeSetsMode"><a href="text-processing.html#prod-CharacterClass">CharacterClass</a><emu-mods><emu-params>[?UnicodeMode, ?UnicodeSetsMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="kqlb6ij4" id="prod-XC-6aJgH">
|
|
<emu-t>(</emu-t>
|
|
<emu-nt params="?UnicodeMode" optional=""><a href="text-processing.html#prod-GroupSpecifier">GroupSpecifier</a><emu-mods><emu-params>[?UnicodeMode]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-nt params="?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups"><a href="text-processing.html#prod-Disjunction">Disjunction</a><emu-mods><emu-params>[?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="veose2ut" id="prod-pz1sJFAi">
|
|
<emu-t>(?</emu-t>
|
|
<emu-nt><a href="text-processing.html#prod-RegularExpressionModifiers">RegularExpressionModifiers</a></emu-nt>
|
|
<emu-t>:</emu-t>
|
|
<emu-nt params="?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups"><a href="text-processing.html#prod-Disjunction">Disjunction</a><emu-mods><emu-params>[?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="2rhyberh" id="prod-kBLGeTWR">
|
|
<emu-t>(?</emu-t>
|
|
<emu-nt><a href="text-processing.html#prod-RegularExpressionModifiers">RegularExpressionModifiers</a></emu-nt>
|
|
<emu-t>-</emu-t>
|
|
<emu-nt><a href="text-processing.html#prod-RegularExpressionModifiers">RegularExpressionModifiers</a></emu-nt>
|
|
<emu-t>:</emu-t>
|
|
<emu-nt params="?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups"><a href="text-processing.html#prod-Disjunction">Disjunction</a><emu-mods><emu-params>[?UnicodeMode, ?UnicodeSetsMode, ?NamedCaptureGroups]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>)</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="RegularExpressionModifiers" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-RegularExpressionModifiers">RegularExpressionModifiers</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="n7nathbb">
|
|
<emu-gann>[empty]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="qehgnqhb">
|
|
<emu-nt><a href="text-processing.html#prod-RegularExpressionModifiers">RegularExpressionModifiers</a></emu-nt>
|
|
<emu-nt><a href="text-processing.html#prod-RegularExpressionModifier">RegularExpressionModifier</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="RegularExpressionModifier" type="lexical" oneof="">
|
|
<emu-nt><a href="text-processing.html#prod-RegularExpressionModifier">RegularExpressionModifier</a></emu-nt> <emu-geq>::</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>i</emu-t> <emu-t>m</emu-t> <emu-t>s</emu-t></emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="SyntaxCharacter" type="lexical" oneof="">
|
|
<emu-nt><a href="text-processing.html#prod-SyntaxCharacter">SyntaxCharacter</a></emu-nt> <emu-geq>::</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>^</emu-t> <emu-t>$</emu-t> <emu-t>\</emu-t> <emu-t>.</emu-t> <emu-t>*</emu-t> <emu-t>+</emu-t> <emu-t>?</emu-t> <emu-t>(</emu-t> <emu-t>)</emu-t> <emu-t>[</emu-t> <emu-t>]</emu-t> <emu-t>{</emu-t> <emu-t>}</emu-t> <emu-t>|</emu-t></emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="PatternCharacter" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-PatternCharacter">PatternCharacter</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="uu1noe--">
|
|
<emu-nt><a href="ecmascript-language-source-code.html#prod-SourceCharacter">SourceCharacter</a></emu-nt> <emu-gmod>but not <emu-nt><a href="text-processing.html#prod-SyntaxCharacter">SyntaxCharacter</a></emu-nt></emu-gmod>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="AtomEscape" params="UnicodeMode, NamedCaptureGroups" type="lexical">
|
|
<emu-nt params="UnicodeMode, NamedCaptureGroups"><a href="text-processing.html#prod-AtomEscape">AtomEscape</a><emu-mods><emu-params>[UnicodeMode, NamedCaptureGroups]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="fr_5bnut" id="prod-2qcgA24q">
|
|
<emu-nt><a href="text-processing.html#prod-DecimalEscape">DecimalEscape</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="1dlni0cs" id="prod-QZtCcvYH">
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-CharacterClassEscape">CharacterClassEscape</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="i4ceewqb" id="prod-sBosbs9Q">
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-CharacterEscape">CharacterEscape</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="jsb3w65g" constraints="+NamedCaptureGroups" id="prod-YgRCIQFy"><emu-constraints>[+NamedCaptureGroups]</emu-constraints>
|
|
<emu-t>k</emu-t>
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-GroupName">GroupName</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="CharacterEscape" params="UnicodeMode" type="lexical">
|
|
<emu-nt params="UnicodeMode"><a href="text-processing.html#prod-CharacterEscape">CharacterEscape</a><emu-mods><emu-params>[UnicodeMode]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="-i5xcal8" id="prod-q4aq35sO">
|
|
<emu-nt><a href="text-processing.html#prod-ControlEscape">ControlEscape</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="lf4h7vn-" id="prod-lMmOF-9c">
|
|
<emu-t>c</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-AsciiLetter">AsciiLetter</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="br2d94cy" id="prod-oPPhk0pZ">
|
|
<emu-t>0</emu-t>
|
|
<emu-gann>[lookahead ∉ <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="qacbhaps" id="prod-CrHLbIYs">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-HexEscapeSequence">HexEscapeSequence</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="swcse7so">
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-RegExpUnicodeEscapeSequence">RegExpUnicodeEscapeSequence</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="6_pkjcjw" id="prod-VtjEN4lt">
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-IdentityEscape">IdentityEscape</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ControlEscape" type="lexical" oneof="">
|
|
<emu-nt><a href="text-processing.html#prod-ControlEscape">ControlEscape</a></emu-nt> <emu-geq>::</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>f</emu-t> <emu-t>n</emu-t> <emu-t>r</emu-t> <emu-t>t</emu-t> <emu-t>v</emu-t></emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="GroupSpecifier" params="UnicodeMode" type="lexical">
|
|
<emu-nt params="UnicodeMode"><a href="text-processing.html#prod-GroupSpecifier">GroupSpecifier</a><emu-mods><emu-params>[UnicodeMode]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="unyz_r7p">
|
|
<emu-t>?</emu-t>
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-GroupName">GroupName</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="GroupName" params="UnicodeMode" type="lexical">
|
|
<emu-nt params="UnicodeMode"><a href="text-processing.html#prod-GroupName">GroupName</a><emu-mods><emu-params>[UnicodeMode]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="bbvxam1q" id="prod-CieYjAI6">
|
|
<emu-t><</emu-t>
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-RegExpIdentifierName">RegExpIdentifierName</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>></emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="RegExpIdentifierName" params="UnicodeMode" type="lexical">
|
|
<emu-nt params="UnicodeMode"><a href="text-processing.html#prod-RegExpIdentifierName">RegExpIdentifierName</a><emu-mods><emu-params>[UnicodeMode]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="epjtohg4" id="prod-UEFofPmM">
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-RegExpIdentifierStart">RegExpIdentifierStart</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="5ujdxycq" id="prod-Wlj6DCQi">
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-RegExpIdentifierName">RegExpIdentifierName</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-RegExpIdentifierPart">RegExpIdentifierPart</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="RegExpIdentifierStart" params="UnicodeMode" type="lexical">
|
|
<emu-nt params="UnicodeMode"><a href="text-processing.html#prod-RegExpIdentifierStart">RegExpIdentifierStart</a><emu-mods><emu-params>[UnicodeMode]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="scjzw6a_" id="prod-ChPpokvC">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierStartChar">IdentifierStartChar</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ho0qxsau" id="prod-gHtf4gFI">
|
|
<emu-t>\</emu-t>
|
|
<emu-nt params="+UnicodeMode"><a href="text-processing.html#prod-RegExpUnicodeEscapeSequence">RegExpUnicodeEscapeSequence</a><emu-mods><emu-params>[+UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="fpn-h6zn" constraints="~UnicodeMode" id="prod-WBQHipLA"><emu-constraints>[~UnicodeMode]</emu-constraints>
|
|
<emu-nt><a href="text-processing.html#prod-UnicodeLeadSurrogate">UnicodeLeadSurrogate</a></emu-nt>
|
|
<emu-nt><a href="text-processing.html#prod-UnicodeTrailSurrogate">UnicodeTrailSurrogate</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="RegExpIdentifierPart" params="UnicodeMode" type="lexical">
|
|
<emu-nt params="UnicodeMode"><a href="text-processing.html#prod-RegExpIdentifierPart">RegExpIdentifierPart</a><emu-mods><emu-params>[UnicodeMode]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="q3hdl-qt" id="prod-QEKJWJ5I">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-IdentifierPartChar">IdentifierPartChar</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ho0qxsau" id="prod-tb_1J4i8">
|
|
<emu-t>\</emu-t>
|
|
<emu-nt params="+UnicodeMode"><a href="text-processing.html#prod-RegExpUnicodeEscapeSequence">RegExpUnicodeEscapeSequence</a><emu-mods><emu-params>[+UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="fpn-h6zn" constraints="~UnicodeMode" id="prod-NsruFaTJ"><emu-constraints>[~UnicodeMode]</emu-constraints>
|
|
<emu-nt><a href="text-processing.html#prod-UnicodeLeadSurrogate">UnicodeLeadSurrogate</a></emu-nt>
|
|
<emu-nt><a href="text-processing.html#prod-UnicodeTrailSurrogate">UnicodeTrailSurrogate</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="RegExpUnicodeEscapeSequence" params="UnicodeMode" type="lexical">
|
|
<emu-nt params="UnicodeMode"><a href="text-processing.html#prod-RegExpUnicodeEscapeSequence">RegExpUnicodeEscapeSequence</a><emu-mods><emu-params>[UnicodeMode]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="waogc0qp" constraints="+UnicodeMode" id="prod-8GU45ufS"><emu-constraints>[+UnicodeMode]</emu-constraints>
|
|
<emu-t>u</emu-t>
|
|
<emu-nt><a href="text-processing.html#prod-HexLeadSurrogate">HexLeadSurrogate</a></emu-nt>
|
|
<emu-t>\u</emu-t>
|
|
<emu-nt><a href="text-processing.html#prod-HexTrailSurrogate">HexTrailSurrogate</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="hhq0f7ab" constraints="+UnicodeMode"><emu-constraints>[+UnicodeMode]</emu-constraints>
|
|
<emu-t>u</emu-t>
|
|
<emu-nt><a href="text-processing.html#prod-HexLeadSurrogate">HexLeadSurrogate</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="k3exmx9t" constraints="+UnicodeMode"><emu-constraints>[+UnicodeMode]</emu-constraints>
|
|
<emu-t>u</emu-t>
|
|
<emu-nt><a href="text-processing.html#prod-HexTrailSurrogate">HexTrailSurrogate</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="gun22eck" constraints="+UnicodeMode"><emu-constraints>[+UnicodeMode]</emu-constraints>
|
|
<emu-t>u</emu-t>
|
|
<emu-nt><a href="text-processing.html#prod-HexNonSurrogate">HexNonSurrogate</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="k_zr1roh" constraints="~UnicodeMode" id="prod-5oXd8wzV"><emu-constraints>[~UnicodeMode]</emu-constraints>
|
|
<emu-t>u</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-Hex4Digits">Hex4Digits</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="42_-y9-i" constraints="+UnicodeMode" id="prod-CzkVQCuc"><emu-constraints>[+UnicodeMode]</emu-constraints>
|
|
<emu-t>u{</emu-t>
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-CodePoint">CodePoint</a></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="UnicodeLeadSurrogate" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-UnicodeLeadSurrogate">UnicodeLeadSurrogate</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="qq83i09m">
|
|
<emu-gprose>any Unicode code point in the inclusive interval from U+D800 to U+DBFF</emu-gprose>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="UnicodeTrailSurrogate" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-UnicodeTrailSurrogate">UnicodeTrailSurrogate</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="ivnwxcbc">
|
|
<emu-gprose>any Unicode code point in the inclusive interval from U+DC00 to U+DFFF</emu-gprose>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<p>Each <code>\u</code> <emu-nt id="_ref_24577"><a href="text-processing.html#prod-HexTrailSurrogate">HexTrailSurrogate</a></emu-nt> for which the choice of associated <code>u</code> <emu-nt id="_ref_24578"><a href="text-processing.html#prod-HexLeadSurrogate">HexLeadSurrogate</a></emu-nt> is ambiguous shall be associated with the nearest possible <code>u</code> <emu-nt id="_ref_24579"><a href="text-processing.html#prod-HexLeadSurrogate">HexLeadSurrogate</a></emu-nt> that would otherwise have no corresponding <code>\u</code> <emu-nt id="_ref_24580"><a href="text-processing.html#prod-HexTrailSurrogate">HexTrailSurrogate</a></emu-nt>.</p>
|
|
<p> </p>
|
|
<emu-production name="HexLeadSurrogate" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-HexLeadSurrogate">HexLeadSurrogate</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="cblftfpk" id="prod-AEZ_iyDC">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-Hex4Digits">Hex4Digits</a></emu-nt>
|
|
<emu-gmod>but only if the MV of <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-Hex4Digits">Hex4Digits</a></emu-nt> is in the <emu-xref href="#inclusive-interval"><a href="notational-conventions.html#inclusive-interval">inclusive interval</a></emu-xref> from 0xD800 to 0xDBFF</emu-gmod>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="HexTrailSurrogate" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-HexTrailSurrogate">HexTrailSurrogate</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="xh8lnnlz" id="prod-aZFqSbDx">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-Hex4Digits">Hex4Digits</a></emu-nt>
|
|
<emu-gmod>but only if the MV of <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-Hex4Digits">Hex4Digits</a></emu-nt> is in the <emu-xref href="#inclusive-interval"><a href="notational-conventions.html#inclusive-interval">inclusive interval</a></emu-xref> from 0xDC00 to 0xDFFF</emu-gmod>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="HexNonSurrogate" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-HexNonSurrogate">HexNonSurrogate</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="dwn60mjo" id="prod-YFxZ-zB2">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-Hex4Digits">Hex4Digits</a></emu-nt>
|
|
<emu-gmod>but only if the MV of <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-Hex4Digits">Hex4Digits</a></emu-nt> is not in the <emu-xref href="#inclusive-interval"><a href="notational-conventions.html#inclusive-interval">inclusive interval</a></emu-xref> from 0xD800 to 0xDFFF</emu-gmod>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="IdentityEscape" params="UnicodeMode" type="lexical">
|
|
<emu-nt params="UnicodeMode"><a href="text-processing.html#prod-IdentityEscape">IdentityEscape</a><emu-mods><emu-params>[UnicodeMode]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="_sxoisew" constraints="+UnicodeMode"><emu-constraints>[+UnicodeMode]</emu-constraints>
|
|
<emu-nt><a href="text-processing.html#prod-SyntaxCharacter">SyntaxCharacter</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="iiubx3hh" constraints="+UnicodeMode"><emu-constraints>[+UnicodeMode]</emu-constraints>
|
|
<emu-t>/</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="kxdkcwd_" constraints="~UnicodeMode"><emu-constraints>[~UnicodeMode]</emu-constraints>
|
|
<emu-nt><a href="ecmascript-language-source-code.html#prod-SourceCharacter">SourceCharacter</a></emu-nt> <emu-gmod>but not <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-UnicodeIDContinue">UnicodeIDContinue</a></emu-nt></emu-gmod>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="DecimalEscape" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-DecimalEscape">DecimalEscape</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="1ajrj4io" id="prod-PUMw6WxS">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-NonZeroDigit">NonZeroDigit</a></emu-nt>
|
|
<emu-nt params="~Sep" optional=""><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigits">DecimalDigits</a><emu-mods><emu-params>[~Sep]</emu-params><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
<emu-gann>[lookahead ∉ <emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>]</emu-gann>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="CharacterClassEscape" params="UnicodeMode" type="lexical">
|
|
<emu-nt params="UnicodeMode"><a href="text-processing.html#prod-CharacterClassEscape">CharacterClassEscape</a><emu-mods><emu-params>[UnicodeMode]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="8pmnkw2i" id="prod-SeTTaRwS">
|
|
<emu-t>d</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="kzsugx0d" id="prod-JQe22hGV">
|
|
<emu-t>D</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="w5xsbsk3" id="prod-Ba3BrqMI">
|
|
<emu-t>s</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="avlpsekd" id="prod-mC3Wqo02">
|
|
<emu-t>S</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="lytism1a" id="prod-uRZ9YD5P">
|
|
<emu-t>w</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="rhxouzu-" id="prod-tSKKQe8i">
|
|
<emu-t>W</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="qowxggfi" constraints="+UnicodeMode" id="prod-5iubKlkQ"><emu-constraints>[+UnicodeMode]</emu-constraints>
|
|
<emu-t>p{</emu-t>
|
|
<emu-nt><a href="text-processing.html#prod-UnicodePropertyValueExpression">UnicodePropertyValueExpression</a></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="ufkccifh" constraints="+UnicodeMode" id="prod-LRNY7pYO"><emu-constraints>[+UnicodeMode]</emu-constraints>
|
|
<emu-t>P{</emu-t>
|
|
<emu-nt><a href="text-processing.html#prod-UnicodePropertyValueExpression">UnicodePropertyValueExpression</a></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="UnicodePropertyValueExpression" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-UnicodePropertyValueExpression">UnicodePropertyValueExpression</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="sr3kbwzj" id="prod-wlk0gl-x">
|
|
<emu-nt><a href="text-processing.html#prod-UnicodePropertyName">UnicodePropertyName</a></emu-nt>
|
|
<emu-t>=</emu-t>
|
|
<emu-nt><a href="text-processing.html#prod-UnicodePropertyValue">UnicodePropertyValue</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="jdlbklv9" id="prod-jMQ5xe2C">
|
|
<emu-nt><a href="text-processing.html#prod-LoneUnicodePropertyNameOrValue">LoneUnicodePropertyNameOrValue</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="UnicodePropertyName" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-UnicodePropertyName">UnicodePropertyName</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="wmjhn5yf">
|
|
<emu-nt><a href="text-processing.html#prod-UnicodePropertyNameCharacters">UnicodePropertyNameCharacters</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="UnicodePropertyNameCharacters" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-UnicodePropertyNameCharacters">UnicodePropertyNameCharacters</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="wsr_rirg">
|
|
<emu-nt><a href="text-processing.html#prod-UnicodePropertyNameCharacter">UnicodePropertyNameCharacter</a></emu-nt>
|
|
<emu-nt optional=""><a href="text-processing.html#prod-UnicodePropertyNameCharacters">UnicodePropertyNameCharacters</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="UnicodePropertyValue" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-UnicodePropertyValue">UnicodePropertyValue</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="umqrcndj">
|
|
<emu-nt><a href="text-processing.html#prod-UnicodePropertyValueCharacters">UnicodePropertyValueCharacters</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="LoneUnicodePropertyNameOrValue" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-LoneUnicodePropertyNameOrValue">LoneUnicodePropertyNameOrValue</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="umqrcndj">
|
|
<emu-nt><a href="text-processing.html#prod-UnicodePropertyValueCharacters">UnicodePropertyValueCharacters</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="UnicodePropertyValueCharacters" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-UnicodePropertyValueCharacters">UnicodePropertyValueCharacters</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="wickoffg">
|
|
<emu-nt><a href="text-processing.html#prod-UnicodePropertyValueCharacter">UnicodePropertyValueCharacter</a></emu-nt>
|
|
<emu-nt optional=""><a href="text-processing.html#prod-UnicodePropertyValueCharacters">UnicodePropertyValueCharacters</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="UnicodePropertyValueCharacter" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-UnicodePropertyValueCharacter">UnicodePropertyValueCharacter</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="uxjuzani">
|
|
<emu-nt><a href="text-processing.html#prod-UnicodePropertyNameCharacter">UnicodePropertyNameCharacter</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="s4me4hlz">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-DecimalDigit">DecimalDigit</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="UnicodePropertyNameCharacter" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-UnicodePropertyNameCharacter">UnicodePropertyNameCharacter</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="7q8tumk4">
|
|
<emu-nt><a href="ecmascript-language-lexical-grammar.html#prod-AsciiLetter">AsciiLetter</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="b1zllonv">
|
|
<emu-t>_</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="CharacterClass" params="UnicodeMode, UnicodeSetsMode" type="lexical">
|
|
<emu-nt params="UnicodeMode, UnicodeSetsMode"><a href="text-processing.html#prod-CharacterClass">CharacterClass</a><emu-mods><emu-params>[UnicodeMode, UnicodeSetsMode]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="7jlltzv-" id="prod-XeZ8wReK">
|
|
<emu-t>[</emu-t>
|
|
<emu-gann>[lookahead ≠ <emu-t>^</emu-t>]</emu-gann>
|
|
<emu-nt params="?UnicodeMode, ?UnicodeSetsMode"><a href="text-processing.html#prod-ClassContents">ClassContents</a><emu-mods><emu-params>[?UnicodeMode, ?UnicodeSetsMode]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>]</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="8cldojko" id="prod-BR9Nw5Gp">
|
|
<emu-t>[^</emu-t>
|
|
<emu-nt params="?UnicodeMode, ?UnicodeSetsMode"><a href="text-processing.html#prod-ClassContents">ClassContents</a><emu-mods><emu-params>[?UnicodeMode, ?UnicodeSetsMode]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>]</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassContents" params="UnicodeMode, UnicodeSetsMode" type="lexical">
|
|
<emu-nt params="UnicodeMode, UnicodeSetsMode"><a href="text-processing.html#prod-ClassContents">ClassContents</a><emu-mods><emu-params>[UnicodeMode, UnicodeSetsMode]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="n7nathbb" id="prod-7oNDq70_">
|
|
<emu-gann>[empty]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="n1dm9hk1" constraints="~UnicodeSetsMode" id="prod-Qe2Av6B8"><emu-constraints>[~UnicodeSetsMode]</emu-constraints>
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-NonemptyClassRanges">NonemptyClassRanges</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="mn83sbuj" constraints="+UnicodeSetsMode"><emu-constraints>[+UnicodeSetsMode]</emu-constraints>
|
|
<emu-nt><a href="text-processing.html#prod-ClassSetExpression">ClassSetExpression</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="NonemptyClassRanges" params="UnicodeMode" type="lexical">
|
|
<emu-nt params="UnicodeMode"><a href="text-processing.html#prod-NonemptyClassRanges">NonemptyClassRanges</a><emu-mods><emu-params>[UnicodeMode]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="p14hei32">
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-ClassAtom">ClassAtom</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="-_prw338" id="prod-8-K7AdXe">
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-ClassAtom">ClassAtom</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-NonemptyClassRangesNoDash">NonemptyClassRangesNoDash</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="1ikw0jm6" id="prod--cKKVMsq">
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-ClassAtom">ClassAtom</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>-</emu-t>
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-ClassAtom">ClassAtom</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?UnicodeMode, ~UnicodeSetsMode"><a href="text-processing.html#prod-ClassContents">ClassContents</a><emu-mods><emu-params>[?UnicodeMode, ~UnicodeSetsMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="NonemptyClassRangesNoDash" params="UnicodeMode" type="lexical">
|
|
<emu-nt params="UnicodeMode"><a href="text-processing.html#prod-NonemptyClassRangesNoDash">NonemptyClassRangesNoDash</a><emu-mods><emu-params>[UnicodeMode]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="p14hei32">
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-ClassAtom">ClassAtom</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="tfcxdhcb" id="prod-MjoVem1x">
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-ClassAtomNoDash">ClassAtomNoDash</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-NonemptyClassRangesNoDash">NonemptyClassRangesNoDash</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="boblwo2h" id="prod-AN4eyFTZ">
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-ClassAtomNoDash">ClassAtomNoDash</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>-</emu-t>
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-ClassAtom">ClassAtom</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
<emu-nt params="?UnicodeMode, ~UnicodeSetsMode"><a href="text-processing.html#prod-ClassContents">ClassContents</a><emu-mods><emu-params>[?UnicodeMode, ~UnicodeSetsMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassAtom" params="UnicodeMode" type="lexical">
|
|
<emu-nt params="UnicodeMode"><a href="text-processing.html#prod-ClassAtom">ClassAtom</a><emu-mods><emu-params>[UnicodeMode]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="byslh4l8" id="prod-ee-3CYw6">
|
|
<emu-t>-</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="nglojpbu">
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-ClassAtomNoDash">ClassAtomNoDash</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassAtomNoDash" params="UnicodeMode" type="lexical">
|
|
<emu-nt params="UnicodeMode"><a href="text-processing.html#prod-ClassAtomNoDash">ClassAtomNoDash</a><emu-mods><emu-params>[UnicodeMode]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="7n5ukjeb" id="prod-DSKNclKY">
|
|
<emu-nt><a href="ecmascript-language-source-code.html#prod-SourceCharacter">SourceCharacter</a></emu-nt> <emu-gmod>but not one of <emu-t>\</emu-t> or <emu-t>]</emu-t> or <emu-t>-</emu-t></emu-gmod>
|
|
</emu-rhs>
|
|
<emu-rhs a="8qgkzxcd">
|
|
<emu-t>\</emu-t>
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-ClassEscape">ClassEscape</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassEscape" params="UnicodeMode" type="lexical">
|
|
<emu-nt params="UnicodeMode"><a href="text-processing.html#prod-ClassEscape">ClassEscape</a><emu-mods><emu-params>[UnicodeMode]</emu-params></emu-mods></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="ayxoiyyq" id="prod-MZvj9Dzw">
|
|
<emu-t>b</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="7_g4l0lw" constraints="+UnicodeMode" id="prod-A6KLgGNK"><emu-constraints>[+UnicodeMode]</emu-constraints>
|
|
<emu-t>-</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="1dlni0cs" id="prod-pRiuVk3t">
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-CharacterClassEscape">CharacterClassEscape</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="i4ceewqb" id="prod-NKSKjwBB">
|
|
<emu-nt params="?UnicodeMode"><a href="text-processing.html#prod-CharacterEscape">CharacterEscape</a><emu-mods><emu-params>[?UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassSetExpression" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-ClassSetExpression">ClassSetExpression</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="3kf_tbjz">
|
|
<emu-nt><a href="text-processing.html#prod-ClassUnion">ClassUnion</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="iwshmigm">
|
|
<emu-nt><a href="text-processing.html#prod-ClassIntersection">ClassIntersection</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="xyhgeqif">
|
|
<emu-nt><a href="text-processing.html#prod-ClassSubtraction">ClassSubtraction</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassUnion" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-ClassUnion">ClassUnion</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="lvavyv54" id="prod-g_C-vqXS">
|
|
<emu-nt><a href="text-processing.html#prod-ClassSetRange">ClassSetRange</a></emu-nt>
|
|
<emu-nt optional=""><a href="text-processing.html#prod-ClassUnion">ClassUnion</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="ga57bqew" id="prod-x32ygNst">
|
|
<emu-nt><a href="text-processing.html#prod-ClassSetOperand">ClassSetOperand</a></emu-nt>
|
|
<emu-nt optional=""><a href="text-processing.html#prod-ClassUnion">ClassUnion</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassIntersection" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-ClassIntersection">ClassIntersection</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="7h6yrwnx" id="prod-pPEC03dD">
|
|
<emu-nt><a href="text-processing.html#prod-ClassSetOperand">ClassSetOperand</a></emu-nt>
|
|
<emu-t>&&</emu-t>
|
|
<emu-gann>[lookahead ≠ <emu-t>&</emu-t>]</emu-gann>
|
|
<emu-nt><a href="text-processing.html#prod-ClassSetOperand">ClassSetOperand</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="havb7zmx" id="prod-t1FOWCCV">
|
|
<emu-nt><a href="text-processing.html#prod-ClassIntersection">ClassIntersection</a></emu-nt>
|
|
<emu-t>&&</emu-t>
|
|
<emu-gann>[lookahead ≠ <emu-t>&</emu-t>]</emu-gann>
|
|
<emu-nt><a href="text-processing.html#prod-ClassSetOperand">ClassSetOperand</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassSubtraction" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-ClassSubtraction">ClassSubtraction</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="0iwjxoz1" id="prod-ET7TxN9I">
|
|
<emu-nt><a href="text-processing.html#prod-ClassSetOperand">ClassSetOperand</a></emu-nt>
|
|
<emu-t>--</emu-t>
|
|
<emu-nt><a href="text-processing.html#prod-ClassSetOperand">ClassSetOperand</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="pdtgdxpo" id="prod-EEppnL8M">
|
|
<emu-nt><a href="text-processing.html#prod-ClassSubtraction">ClassSubtraction</a></emu-nt>
|
|
<emu-t>--</emu-t>
|
|
<emu-nt><a href="text-processing.html#prod-ClassSetOperand">ClassSetOperand</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassSetRange" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-ClassSetRange">ClassSetRange</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="olq8_w1t" id="prod-uyCI4Vm7">
|
|
<emu-nt><a href="text-processing.html#prod-ClassSetCharacter">ClassSetCharacter</a></emu-nt>
|
|
<emu-t>-</emu-t>
|
|
<emu-nt><a href="text-processing.html#prod-ClassSetCharacter">ClassSetCharacter</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassSetOperand" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-ClassSetOperand">ClassSetOperand</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="bz00qqkp" id="prod-j3hqQEKY">
|
|
<emu-nt><a href="text-processing.html#prod-NestedClass">NestedClass</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="gmk8rsml" id="prod-0J8lXMFz">
|
|
<emu-nt><a href="text-processing.html#prod-ClassStringDisjunction">ClassStringDisjunction</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="pbrz9y58" id="prod-lqRWpy0s">
|
|
<emu-nt><a href="text-processing.html#prod-ClassSetCharacter">ClassSetCharacter</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="NestedClass" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-NestedClass">NestedClass</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="tupozqhe" id="prod-gbvVygeq">
|
|
<emu-t>[</emu-t>
|
|
<emu-gann>[lookahead ≠ <emu-t>^</emu-t>]</emu-gann>
|
|
<emu-nt params="+UnicodeMode, +UnicodeSetsMode"><a href="text-processing.html#prod-ClassContents">ClassContents</a><emu-mods><emu-params>[+UnicodeMode, +UnicodeSetsMode]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>]</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="t8lra7ts" id="prod-9Q7EpkJI">
|
|
<emu-t>[^</emu-t>
|
|
<emu-nt params="+UnicodeMode, +UnicodeSetsMode"><a href="text-processing.html#prod-ClassContents">ClassContents</a><emu-mods><emu-params>[+UnicodeMode, +UnicodeSetsMode]</emu-params></emu-mods></emu-nt>
|
|
<emu-t>]</emu-t>
|
|
</emu-rhs>
|
|
<emu-rhs a="27fjovie" id="prod-NSfZaxtj">
|
|
<emu-t>\</emu-t>
|
|
<emu-nt params="+UnicodeMode"><a href="text-processing.html#prod-CharacterClassEscape">CharacterClassEscape</a><emu-mods><emu-params>[+UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassStringDisjunction" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-ClassStringDisjunction">ClassStringDisjunction</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="kjbhn6ad" id="prod-OWA-RIEl">
|
|
<emu-t>\q{</emu-t>
|
|
<emu-nt><a href="text-processing.html#prod-ClassStringDisjunctionContents">ClassStringDisjunctionContents</a></emu-nt>
|
|
<emu-t>}</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassStringDisjunctionContents" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-ClassStringDisjunctionContents">ClassStringDisjunctionContents</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="-skvesn5" id="prod-4o44xqjO">
|
|
<emu-nt><a href="text-processing.html#prod-ClassString">ClassString</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="bsmwgovm" id="prod-RLq9E3c7">
|
|
<emu-nt><a href="text-processing.html#prod-ClassString">ClassString</a></emu-nt>
|
|
<emu-t>|</emu-t>
|
|
<emu-nt><a href="text-processing.html#prod-ClassStringDisjunctionContents">ClassStringDisjunctionContents</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassString" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-ClassString">ClassString</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="n7nathbb" id="prod-wlHjT_uF">
|
|
<emu-gann>[empty]</emu-gann>
|
|
</emu-rhs>
|
|
<emu-rhs a="zzzearnw" id="prod-R19M_TTI">
|
|
<emu-nt><a href="text-processing.html#prod-NonEmptyClassString">NonEmptyClassString</a></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="NonEmptyClassString" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-NonEmptyClassString">NonEmptyClassString</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="g-kpie7v" id="prod-u7ZJYYBQ">
|
|
<emu-nt><a href="text-processing.html#prod-ClassSetCharacter">ClassSetCharacter</a></emu-nt>
|
|
<emu-nt optional=""><a href="text-processing.html#prod-NonEmptyClassString">NonEmptyClassString</a><emu-mods><emu-opt>opt</emu-opt></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassSetCharacter" type="lexical">
|
|
<emu-nt><a href="text-processing.html#prod-ClassSetCharacter">ClassSetCharacter</a></emu-nt> <emu-geq>::</emu-geq> <emu-rhs a="i1yszfyw" id="prod-aYRGZPo4">
|
|
<emu-gann>[lookahead ∉ <emu-nt><a href="text-processing.html#prod-ClassSetReservedDoublePunctuator">ClassSetReservedDoublePunctuator</a></emu-nt>]</emu-gann>
|
|
<emu-nt><a href="ecmascript-language-source-code.html#prod-SourceCharacter">SourceCharacter</a></emu-nt> <emu-gmod>but not <emu-nt><a href="text-processing.html#prod-ClassSetSyntaxCharacter">ClassSetSyntaxCharacter</a></emu-nt></emu-gmod>
|
|
</emu-rhs>
|
|
<emu-rhs a="ytjgggtw" id="prod-K7v_V3OY">
|
|
<emu-t>\</emu-t>
|
|
<emu-nt params="+UnicodeMode"><a href="text-processing.html#prod-CharacterEscape">CharacterEscape</a><emu-mods><emu-params>[+UnicodeMode]</emu-params></emu-mods></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="xyoixwqd" id="prod-wURb2FX1">
|
|
<emu-t>\</emu-t>
|
|
<emu-nt><a href="text-processing.html#prod-ClassSetReservedPunctuator">ClassSetReservedPunctuator</a></emu-nt>
|
|
</emu-rhs>
|
|
<emu-rhs a="axxsqknu" id="prod-3EeamNn_">
|
|
<emu-t>\b</emu-t>
|
|
</emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassSetReservedDoublePunctuator" type="lexical" oneof="">
|
|
<emu-nt><a href="text-processing.html#prod-ClassSetReservedDoublePunctuator">ClassSetReservedDoublePunctuator</a></emu-nt> <emu-geq>::</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>&&</emu-t> <emu-t>!!</emu-t> <emu-t>##</emu-t> <emu-t>$$</emu-t> <emu-t>%%</emu-t> <emu-t>**</emu-t> <emu-t>++</emu-t> <emu-t>,,</emu-t> <emu-t>..</emu-t> <emu-t>::</emu-t> <emu-t>;;</emu-t> <emu-t><<</emu-t> <emu-t>==</emu-t> <emu-t>>></emu-t> <emu-t>??</emu-t> <emu-t>@@</emu-t> <emu-t>^^</emu-t> <emu-t>``</emu-t> <emu-t>~~</emu-t></emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassSetSyntaxCharacter" type="lexical" oneof="">
|
|
<emu-nt><a href="text-processing.html#prod-ClassSetSyntaxCharacter">ClassSetSyntaxCharacter</a></emu-nt> <emu-geq>::</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>(</emu-t> <emu-t>)</emu-t> <emu-t>[</emu-t> <emu-t>]</emu-t> <emu-t>{</emu-t> <emu-t>}</emu-t> <emu-t>/</emu-t> <emu-t>-</emu-t> <emu-t>\</emu-t> <emu-t>|</emu-t></emu-rhs>
|
|
</emu-production>
|
|
<emu-production name="ClassSetReservedPunctuator" type="lexical" oneof="">
|
|
<emu-nt><a href="text-processing.html#prod-ClassSetReservedPunctuator">ClassSetReservedPunctuator</a></emu-nt> <emu-geq>::</emu-geq> <emu-oneof>one of</emu-oneof> <emu-rhs><emu-t>&</emu-t> <emu-t>-</emu-t> <emu-t>!</emu-t> <emu-t>#</emu-t> <emu-t>%</emu-t> <emu-t>,</emu-t> <emu-t>:</emu-t> <emu-t>;</emu-t> <emu-t><</emu-t> <emu-t>=</emu-t> <emu-t>></emu-t> <emu-t>@</emu-t> <emu-t>`</emu-t> <emu-t>~</emu-t></emu-rhs>
|
|
</emu-production>
|
|
</emu-annex>
|
|
</emu-annex></div></body> |