?uem/p1-90`Array は、特定の種類の
Array
Array(…) は、同じ引数を持つオブジェクト作成式 new Array(…) と同等です。extends 節の値として使用できます。特殊な Array の動作を継承しようとするサブクラスsuper 呼出しを含まなければなりません。ただし、ほとんどの Array.prototype メソッドは、この関数は呼び出されたとき、次の手順を実行します。
Array
この関数は呼び出されたとき、次の手順を実行します。
この async 関数は呼び出されたとき、次の手順を実行します。
この関数は呼び出されたとき、次の手順を実行します。
このメソッドは呼び出されたとき、次の手順を実行します。
Array.prototype の値は
このプロパティは属性 { [[Writable]]:
Array[%Symbol.species%] は、set アクセサー関数が
この関数の
Array prototype メソッドは通常、
Array prototype オブジェクトは:
Array prototype オブジェクトは、ECMAScript 2015 仕様より前に作成された ECMAScript コードとの互換性を保証するため、
このメソッドは、このオブジェクトの配列要素に続いて、各引数の配列要素を含む配列を返します。
呼び出されたとき、次の手順を実行します。
このメソッドの
手順
このメソッドは意図的に汎用です。
Array.prototype.constructor の初期値は
end 引数は省略可能です。指定されていない場合、
target が負である場合、length を配列の長さとして
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
このメソッドは呼び出されたとき、次の手順を実行します。
callback は3つの引数を受け取り、Boolean 値へ型強制できる値を返す関数であるべきです。every は、callback が every は直ちに every は
thisArg パラメーターが指定された場合、callback の各呼出しで
callback は、要素の値、要素のインデックス、および走査中のオブジェクトという3つの引数で呼び出されます。
every は呼び出されたオブジェクトを直接変更しませんが、callback の呼出しによってそのオブジェクトが変更される場合があります。
every によって処理される要素の範囲は、callback の最初の呼出しより前に設定されます。every の呼出し開始後に配列へ追加された要素は callback によって訪問されません。配列の既存要素が変更された場合、callback に渡される値は every がその要素を訪問した時点の値になります。every の呼出し開始後、訪問される前に削除された要素は訪問されません。every は数学における「すべてに対して」量化子のように動作します。特に、空の配列については
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
start 引数は省略可能です。指定されていない場合、
end 引数は省略可能です。指定されていない場合、
start が負である場合、length を配列の長さとして
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
callback は3つの引数を受け取り、Boolean 値へ型強制できる値を返す関数であるべきです。filter は、配列の各要素について昇順に callback を1回ずつ呼び出し、callback が
thisArg パラメーターが指定された場合、callback の各呼出しで
callback は、要素の値、要素のインデックス、および走査中のオブジェクトという3つの引数で呼び出されます。
filter は呼び出されたオブジェクトを直接変更しませんが、callback の呼出しによってそのオブジェクトが変更される場合があります。
filter によって処理される要素の範囲は、callback の最初の呼出しより前に設定されます。filter の呼出し開始後に配列へ追加された要素は callback によって訪問されません。配列の既存要素が変更された場合、callback に渡される値は filter がその要素を訪問した時点の値になります。filter の呼出し開始後、訪問される前に削除された要素は訪問されません。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
このメソッドは、predicate が find は直ちにその要素値を返します。そうでない場合、find は
追加情報については
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
このメソッドは、predicate が findIndex は直ちにその要素値のインデックスを返します。そうでない場合、findIndex は -1 を返します。
追加情報については
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
このメソッドは、predicate が findLast は直ちにその要素値を返します。そうでない場合、findLast は
追加情報については
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
このメソッドは、predicate が findLastIndex は直ちにその要素値のインデックスを返します。そうでない場合、findLastIndex は -1 を返します。
追加情報については
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
obj は array-like オブジェクトまたは
predicate は関数であるべきです。配列の要素について呼び出されるとき、要素の値、要素のインデックス、および走査中のオブジェクトという3つの引数が渡されます。その戻り値は Boolean 値へ型強制されます。
thisArg は predicate の各呼出しに対する
この操作は呼び出されたオブジェクトを直接変更しませんが、predicate の呼出しによってそのオブジェクトが変更される場合があります。
処理される要素の範囲は、走査の開始直前、predicate の最初の呼出しより前に設定されます。その後に配列へ追加された要素は predicate によって訪問されません。配列の既存要素が変更された場合、predicate に渡される値は、この操作がその要素を訪問した時点の値になります。走査開始後、訪問される前に削除された要素も訪問され、prototype から検索されるか、
呼び出されると、次の手順を実行する。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは呼び出されたとき、次の手順を実行します。
callback は3つの引数を受け取る関数であるべきです。forEach は配列に存在する各要素について昇順に callback を1回ずつ呼び出します。callback は実際に存在する配列要素についてのみ呼び出され、存在しない配列要素については呼び出されません。
thisArg パラメーターが指定された場合、callback の各呼出しで
callback は、要素の値、要素のインデックス、および走査中のオブジェクトという3つの引数で呼び出されます。
forEach は呼び出されたオブジェクトを直接変更しませんが、callback の呼出しによってそのオブジェクトが変更される場合があります。
forEach によって処理される要素の範囲は、callback の最初の呼出しより前に設定されます。forEach の呼出し開始後に配列へ追加された要素は callback によって訪問されません。配列の既存要素が変更された場合、callback に渡される値は forEach がその要素を訪問した時点の値になります。forEach の呼出し開始後、訪問される前に削除された要素は訪問されません。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
このメソッドは
省略可能な第2引数 fromIndex の既定値は
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
このメソッドは、類似する indexOf メソッドと意図的に2つの点で異なります。第1に、
このメソッドは
省略可能な第2引数 fromIndex の既定値は
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
このメソッドは配列の要素を String に変換し、その後、それらの String を separator の出現で区切って連結します。separator が指定されていない場合、単一のコンマが separator として使用されます。
呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは
省略可能な第2引数 fromIndex の既定値は配列の長さから1を引いた値です(すなわち、配列全体が検索されます)。配列の長さ以上である場合、配列全体が検索されます。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
callback は3つの引数を受け取る関数であるべきです。map は配列の各要素について昇順に callback を1回ずつ呼び出し、その結果から新しい Array を構築します。callback は実際に存在する配列要素についてのみ呼び出され、存在しない配列要素については呼び出されません。
thisArg パラメーターが指定された場合、callback の各呼出しで
callback は、要素の値、要素のインデックス、および走査中のオブジェクトという3つの引数で呼び出されます。
map は呼び出されたオブジェクトを直接変更しませんが、callback の呼出しによってそのオブジェクトが変更される場合があります。
map によって処理される要素の範囲は、callback の最初の呼出しより前に設定されます。map の呼出し開始後に配列へ追加された要素は callback によって訪問されません。配列の既存要素が変更された場合、callback に渡される値は map がその要素を訪問した時点の値になります。map の呼出し開始後、訪問される前に削除された要素は訪問されません。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
このメソッドは配列の最後の要素を削除して返します。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
このメソッドは、引数を現れる順序で配列の末尾に追加します。配列の新しい長さを返します。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドの
このメソッドは意図的に汎用です。
callback は4つの引数を受け取る関数であるべきです。reduce は、initialValue が指定されていない限り最初の要素をスキップして、配列に存在する各要素について昇順に callback を1回ずつ呼び出します。
callback は4つの引数で呼び出されます。previousValue(前回の callback 呼出しからの値)、currentValue(現在の要素の値)、currentIndex、および走査中のオブジェクトです。callback が最初に呼び出されるとき、previousValue と currentValue は2通りの値のいずれかになります。reduce の呼出しで initialValue が指定された場合、previousValue は initialValue となり、currentValue は配列の最初の値となります。initialValue が指定されていない場合、previousValue は配列の最初の値となり、currentValue は2番目の値となります。配列が要素を含まず、initialValue が指定されていない場合は
reduce は呼び出されたオブジェクトを直接変更しませんが、callback の呼出しによってそのオブジェクトが変更される場合があります。
reduce によって処理される要素の範囲は、callback の最初の呼出しより前に設定されます。reduce の呼出し開始後に配列へ追加された要素は callback によって訪問されません。配列の既存要素が変更された場合、callback に渡される値は reduce がその要素を訪問した時点の値になります。reduce の呼出し開始後、訪問される前に削除された要素は訪問されません。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
callback は4つの引数を受け取る関数であるべきです。reduceRight は、initialValue が指定されていない限り最初の呼出しをスキップして、配列に存在する各要素について降順に callback を1回ずつ呼び出します。
callback は4つの引数で呼び出されます。previousValue(前回の callback 呼出しからの値)、currentValue(現在の要素の値)、currentIndex、および走査中のオブジェクトです。関数が最初に呼び出されるとき、previousValue と currentValue は2通りの値のいずれかになります。reduceRight の呼出しで initialValue が指定された場合、previousValue は initialValue となり、currentValue は配列の最後の値となります。initialValue が指定されていない場合、previousValue は配列の最後の値となり、currentValue は最後から2番目の値となります。配列が要素を含まず、initialValue が指定されていない場合は
reduceRight は呼び出されたオブジェクトを直接変更しませんが、callback の呼出しによってそのオブジェクトが変更される場合があります。
reduceRight によって処理される要素の範囲は、callback の最初の呼出しより前に設定されます。reduceRight の呼出し開始後に配列へ追加された要素は callback によって訪問されません。配列の既存要素が callback によって変更された場合、callback に渡される値は reduceRight がその要素を訪問した時点の値になります。reduceRight の呼出し開始後、訪問される前に削除された要素は訪問されません。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
このメソッドは配列の要素を並べ替えて順序を反転します。反転された配列を返します。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
このメソッドは配列の最初の要素を削除して返します。
呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
このメソッドは、要素 start から要素 end の直前まで(end が
呼び出されたとき、次の手順を実行します。
手順
このメソッドは意図的に汎用です。
callback は3つの引数を受け取り、Boolean 値へ型強制できる値を返す関数であるべきです。some は、callback が some は直ちに some は
thisArg パラメーターが指定された場合、callback の各呼出しで
callback は、要素の値、要素のインデックス、および走査中のオブジェクトという3つの引数で呼び出されます。
some は呼び出されたオブジェクトを直接変更しませんが、callback の呼出しによってそのオブジェクトが変更される場合があります。
some によって処理される要素の範囲は、callback の最初の呼出しより前に設定されます。some の呼出し開始後に配列へ追加された要素は callback によって訪問されません。配列の既存要素が変更された場合、callback に渡される値は some がその要素を訪問した時点の値になります。some の呼出し開始後、訪問される前に削除された要素は訪問されません。some は数学における「存在する」量化子のように動作します。特に、空の配列については
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
このメソッドはこの配列の要素を並べ替えます。comparator が
呼び出されたとき、次の手順を実行します。
存在しないプロパティ値は常に
このメソッドは意図的に汎用です。
ソート順序とは、上記アルゴリズムの手順
ここでは、表記
上記の条件は、comparator が集合 values を同値類に分割し、それらの同値類が全順序付けされることを保証するために必要十分です。
このメソッドは
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
ECMA-402 Internationalization API を含む ECMAScript 実装は、ECMA-402 で規定されるとおりにこのメソッドを実装しなければなりません。それ以外の場合、このメソッドには次の仕様が使用されます。
ECMA-402 の第1版には、このメソッドの代替仕様は含まれていませんでした。
このメソッドの省略可能なパラメーターの意味は ECMA-402 で定義されます。ECMA-402 のサポートを含まない実装は、それらのパラメーター位置を他の目的に使用してはなりません。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは意図的に汎用です。
このメソッドは、引数リスト内で現れる順序と配列内での順序が同じになるよう、引数を配列の先頭に追加します。
呼び出されたとき、次の手順を実行します。
このメソッドの
このメソッドは意図的に汎用です。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは呼び出されたとき、次の手順を実行します。
このプロパティは属性 { [[Writable]]:
Array インスタンスは
Array インスタンスは
Array インスタンスの
Array Iterator は、特定の Array インスタンスオブジェクトに対する特定の反復を表すオブジェクトです。Array Iterator オブジェクトには名前付き
%ArrayIteratorPrototype% オブジェクトは:
このプロパティは属性 { [[Writable]]:
| 内部スロット | 型 | 説明 |
|---|---|---|
| [[IteratedArrayLike]] |
an Object or |
反復対象となっている array-like オブジェクト。 |
| [[ArrayLikeNextIndex]] | a non-negative integer |
この |
| [[ArrayLikeIterationKind]] |
|
反復の各要素について何が返されるかを識別する値。 |
TypedArray は、基礎となるバイナリデータバッファ(
|
|
要素型 | 要素サイズ | 変換操作 | 説明 |
|---|---|---|---|---|
|
Int8Array %Int8Array% |
|
1 |
|
8ビット2の補数符号付き |
|
Uint8Array %Uint8Array% |
|
1 |
|
8ビット符号なし |
|
Uint8ClampedArray %Uint8ClampedArray% |
|
1 |
|
8ビット符号なし |
|
Int16Array %Int16Array% |
|
2 |
|
16ビット2の補数符号付き |
|
Uint16Array %Uint16Array% |
|
2 |
|
16ビット符号なし |
|
Int32Array %Int32Array% |
|
4 |
|
32ビット2の補数符号付き |
|
Uint32Array %Uint32Array% |
|
4 |
|
32ビット符号なし |
|
BigInt64Array %BigInt64Array% |
|
8 |
|
64ビット2の補数符号付き |
|
BigUint64Array %BigUint64Array% |
|
8 |
|
64ビット符号なし |
|
Float16Array %Float16Array% |
|
2 | 16ビット IEEE 浮動小数点数 | |
|
Float32Array %Float32Array% |
|
4 | 32ビット IEEE 浮動小数点数 | |
|
Float64Array %Float64Array% |
|
8 | 64ビット IEEE 浮動小数点数 |
以下の定義では、TypedArray への参照は、上の表の適切な
%TypedArray% イントリンシックオブジェクトは:
super 呼出しを実行しません。この関数は呼び出されたとき、次の手順を実行します。
この関数の
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは呼び出されたとき、次の手順を実行します。
.prototype の初期値は
このプロパティは属性 { [[Writable]]:
[%Symbol.species%] は、set アクセサー関数が
この関数の
%TypedArray% prototype オブジェクトは:
.prototype.buffer は、set アクセサー関数が
.prototype.byteLength は、set アクセサー関数が
.prototype.byteOffset は、set アクセサー関数が
.prototype.constructor の初期値は
このメソッドの引数の解釈と使用法は、Array.prototype.copyWithin と同じです。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドの引数の解釈と使用法は、Array.prototype.every と同じです。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは汎用ではありません。
このメソッドの引数の解釈と使用法は、Array.prototype.fill と同じです。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドの引数の解釈と使用法は、Array.prototype.filter と同じです。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは汎用ではありません。
このメソッドの引数の解釈と使用法は、Array.prototype.find と同じです。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは汎用ではありません。
このメソッドの引数の解釈と使用法は、Array.prototype.findIndex と同じです。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは汎用ではありません。
このメソッドの引数の解釈と使用法は、Array.prototype.findLast と同じです。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは汎用ではありません。
このメソッドの引数の解釈と使用法は、Array.prototype.findLastIndex と同じです。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは汎用ではありません。
このメソッドの引数の解釈と使用法は、Array.prototype.forEach と同じです。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは汎用ではありません。
このメソッドの引数の解釈と使用法は、Array.prototype.includes と同じです。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは汎用ではありません。
このメソッドの引数の解釈と使用法は、Array.prototype.indexOf と同じです。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは汎用ではありません。
このメソッドの引数の解釈と使用法は、Array.prototype.join と同じです。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは汎用ではありません。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドの引数の解釈と使用法は、Array.prototype.lastIndexOf と同じです。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは汎用ではありません。
.prototype.length は、set アクセサー関数が
この関数は汎用ではありません。
このメソッドの引数の解釈と使用法は、Array.prototype.map と同じです。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは汎用ではありません。
このメソッドの引数の解釈と使用法は、Array.prototype.reduce と同じです。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは汎用ではありません。
このメソッドの引数の解釈と使用法は、Array.prototype.reduceRight と同じです。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは汎用ではありません。
このメソッドの引数の解釈と使用法は、Array.prototype.reverse と同じです。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは汎用ではありません。
このメソッドは、source から値を読み取り、この TypedArray 内に複数の値を設定します。詳細は source の型に基づいて異なります。省略可能な offset 値は、この TypedArray 内で値の書込みを開始する最初の要素インデックスを示します。省略された場合、0 であるとみなされます。
呼び出されたとき、次の手順を実行します。
このメソッドは汎用ではありません。
このメソッドの引数の解釈と使用法は、Array.prototype.slice と同じです。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは汎用ではありません。
このメソッドの引数の解釈と使用法は、Array.prototype.some と同じです。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは汎用ではありません。
これは個別のメソッドであり、以下で説明する点を除き、Array.prototype.sort と同じ要件を実装します。このメソッドの実装は、
このメソッドは汎用ではありません。
呼び出されたとき、次の手順を実行します。
このメソッドは、要素型がこの TypedArray の要素型であり、ArrayBuffer がこの TypedArray の ArrayBuffer であり、start(含む)から end(含まない)までの
呼び出されたとき、次の手順を実行します。
このメソッドは汎用ではありません。
これは個別のメソッドであり、Array.prototype.toLocaleString と同じアルゴリズムを実装します。基礎となるバッファが resizable でない場合に
このメソッドは汎用ではありません。アルゴリズムを評価する前に、
ECMAScript 実装が ECMA-402 Internationalization API を含む場合、このメソッドは ECMA-402 内の Array.prototype.toLocaleString のアルゴリズムに基づきます。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは呼び出されたとき、次の手順を実行します。
このメソッドは呼び出されたとき、次の手順を実行します。
.prototype[%Symbol.toStringTag%] は、set アクセサー関数が
このプロパティは属性 { [[Enumerable]]:
この関数の
各 TypedArray
extends 節の値として使用できます。規定された TypedArray の動作を継承しようとするサブクラス.prototype の組込みメソッドをサポートするために必要な内部状態を持つサブクラスインスタンスを作成して初期化するため、TypedArray super 呼出しを含まなければなりません。各 TypedArray
"%TypedArray.prototype%" とする。各 TypedArray
TypedArray.BYTES_PER_ELEMENT の値は、TypedArray について
このプロパティは属性 { [[Writable]]:
TypedArray.prototype の初期値は、対応する TypedArray prototype イントリンシックオブジェクト(
このプロパティは属性 { [[Writable]]:
各 TypedArray prototype オブジェクトは:
TypedArray.prototype.BYTES_PER_ELEMENT の値は、TypedArray について
このプロパティは属性 { [[Writable]]:
特定の TypedArray
TypedArray インスタンスは
Uint8Array は、上記で説明した特定の種類の TypedArray です。さらに、Uint8Array
標準 base64 alphabet は