Files

33 lines
6.3 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&nbsp;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">
<title>ECMAScript® 2026 Language&nbsp;Specification</title><script src="../assets/js/multipage.js?cache=Wu2V1pj2" defer=""></script><script src="../assets/js/ecmarkup.js?cache=BPFBckdu" defer=""></script><link rel="canonical" href="../#sec-conformance"></head>
<body><div id="spec-container"><emu-clause id="sec-conformance">
<h1><span class="secnum">2</span> Conformance</h1>
<p>A conforming implementation of ECMAScript must provide and support all the types, values, objects, properties, functions, and program syntax and semantics described in this specification.</p>
<p>A conforming implementation of ECMAScript must interpret source text input in conformance with the latest version of the Unicode Standard and ISO/IEC 10646.</p>
<p>A conforming implementation of ECMAScript that provides an application programming interface (API) that supports programs that need to adapt to the linguistic and cultural conventions used by different human languages and countries must implement the interface defined by the most recent edition of ECMA-402 that is compatible with this specification.</p>
<p>A conforming implementation of ECMAScript may provide additional types, values, objects, properties, and functions beyond those described in this specification. In particular, a conforming implementation of ECMAScript may provide properties not described in this specification, and values for those properties, for objects that are described in this specification.</p>
<p>A conforming implementation of ECMAScript may support program and regular expression syntax not described in this specification. In particular, a conforming implementation of ECMAScript may support program syntax that makes use of any “future <emu-xref href="#sec-keywords-and-reserved-words" id="_ref_1009"><a href="ecmascript-language-lexical-grammar.html#sec-keywords-and-reserved-words">reserved words</a></emu-xref>” noted in subclause <emu-xref href="#sec-keywords-and-reserved-words" id="_ref_1"><a href="ecmascript-language-lexical-grammar.html#sec-keywords-and-reserved-words">12.7.2</a></emu-xref> of this specification.</p>
<p>A conforming implementation of ECMAScript must not implement any extension that is listed as a Forbidden Extension in subclause <emu-xref href="#sec-forbidden-extensions" id="_ref_2"><a href="error-handling-and-language-extensions.html#sec-forbidden-extensions">17.1</a></emu-xref>.</p>
<p>A conforming implementation of ECMAScript must not redefine any facilities that are not <emu-xref href="#implementation-defined" id="_ref_1010"><a href="overview.html#implementation-defined">implementation-defined</a></emu-xref>, <emu-xref href="#implementation-approximated" id="_ref_1011"><a href="overview.html#implementation-approximated">implementation-approximated</a></emu-xref>, or <emu-xref href="#host-defined" id="_ref_1012"><a href="overview.html#host-defined">host-defined</a></emu-xref>.</p>
<p>A conforming implementation of ECMAScript may choose to implement or not implement <dfn tabindex="-1">Normative Optional</dfn> subclauses, unless otherwise indicated. Web browsers are generally required to implement all normative optional subclauses. (See Annex <emu-xref href="#sec-additional-ecmascript-features-for-web-browsers" id="_ref_3"><a href="additional-ecmascript-features-for-web-browsers.html#sec-additional-ecmascript-features-for-web-browsers">B</a></emu-xref>.) If any Normative Optional behaviour is implemented, all of the behaviour in the containing Normative Optional clause must be implemented. A Normative Optional clause is denoted in this specification with the words "Normative Optional" in a coloured box, as shown below.</p>
<emu-clause id="sec-conformance-normative-optional" oldids="sec-conformance.normative-optional" example="" normative-optional=""><div class="attributes-tag"><emu-xref href="#sec-conformance" id="_ref_1013"><a href="conformance.html#sec-conformance">Normative Optional</a></emu-xref></div><span id="sec-conformance.normative-optional"></span>
<h1><span class="secnum">2.1</span> Example Normative Optional Clause Heading</h1>
<p>Example clause contents.</p>
</emu-clause>
<p>A conforming implementation of ECMAScript must implement <dfn tabindex="-1">Legacy</dfn> subclauses, unless they are also marked as Normative Optional. All of the language features and behaviours specified within Legacy subclauses have one or more undesirable characteristics. However, their continued usage in existing applications prevents their removal from this specification. These features are not considered part of the core ECMAScript language. Programmers should not use or assume the existence of these features and behaviours when writing new ECMAScript code.</p>
<emu-clause id="sec-conformance-legacy" example="" legacy=""><div class="attributes-tag"><emu-xref href="#sec-conformance" id="_ref_1014"><a href="conformance.html#sec-conformance">Legacy</a></emu-xref></div>
<h1><span class="secnum">2.2</span> Example Legacy Clause Heading</h1>
<p>Example clause contents.</p>
</emu-clause>
<emu-clause id="sec-conformance-legacy-normative-optional" example="" legacy="" normative-optional=""><div class="attributes-tag"><emu-xref href="#sec-conformance" id="_ref_1015"><a href="conformance.html#sec-conformance">Normative Optional</a></emu-xref>, <emu-xref href="#sec-conformance" id="_ref_1016"><a href="conformance.html#sec-conformance">Legacy</a></emu-xref></div>
<h1><span class="secnum">2.3</span> Example Legacy Normative Optional Clause Heading</h1>
<p>Example clause contents.</p>
</emu-clause>
</emu-clause></div></body></html>