ページ表示設定

2 適合性

ECMAScript の適合実装は、この仕様に記述されているすべての型、値、オブジェクト、プロパティ、関数、およびプログラムの構文と意味論を提供し、サポートしなければなりません。

ECMAScript の適合実装は、Unicode 標準および ISO/IEC 10646 の最新版に適合するように、入力されたソーステキストを解釈しなければなりません。

異なる自然言語や国で用いられる言語的および文化的な慣習に適応する必要があるプログラムをサポートするアプリケーションプログラミングインターフェース(API)を提供する ECMAScript の適合実装は、この仕様と互換性のある ECMA-402 の最新版で定義されたインターフェースを実装しなければなりません。

ECMAScript の適合実装は、この仕様に記述されているものに加えて、追加の型、値、オブジェクト、プロパティ、および関数を提供してもかまいません。特に、ECMAScript の適合実装は、この仕様に記述されているオブジェクトに対して、この仕様に記述されていないプロパティと、それらのプロパティの値を提供してもかまいません。

ECMAScript の適合実装は、この仕様に記述されていないプログラムおよび正規表現の構文をサポートしてもかまいません。特に、ECMAScript の適合実装は、この仕様の細分箇条 12.7.2 に記載されている“将来の予約語”を使用するプログラム構文をサポートしてもかまいません。

ECMAScript の適合実装は、細分箇条 17.1 に禁止された拡張として列挙されている拡張を実装してはなりません。

ECMAScript の適合実装は、実装定義、実装近似、またはホスト定義のいずれでもない機能を再定義してはなりません。

ECMAScript の適合実装は、特に指定がない限り、規範的任意の細分箇条を実装するかどうかを選択してもかまいません。一般に、Web ブラウザーには、すべての規範的任意の細分箇条を実装することが要求されます。(附属書 B を参照してください。)規範的任意の動作を一つでも実装する場合、その動作を含む規範的任意の箇条内のすべての動作を実装しなければなりません。この仕様では、規範的任意の箇条は、以下に示すように、色付きのボックス内の“規範的任意”という語で示されます。

規定の任意機能

2.1 規範的任意の箇条の見出しの例

箇条の内容の例。

ECMAScript の適合実装は、規範的任意とも指定されている場合を除き、レガシーの細分箇条を実装しなければなりません。レガシーの細分箇条で規定されるすべての言語機能と動作には、一つ以上の望ましくない特性があります。しかし、既存のアプリケーションで引き続き使用されているため、この仕様から削除することはできません。これらの機能は、ECMAScript 言語の中核の一部とはみなされません。プログラマーは、新しい ECMAScript コードを書く際に、これらの機能と動作を使用したり、その存在を前提としたりするべきではありません。

2.2 レガシーの箇条の見出しの例

箇条の内容の例。

規定の任意機能, レガシー

2.3 レガシーかつ規範的任意の箇条の見出しの例

箇条の内容の例。