TypedArray.prototype.every()

every() メソッドは、提供された関数で実装されたテストに、型付き配列内のすべての要素が合格するかどうかをテストします。このメソッドのアルゴリズムは Array.prototype.every() と同じです。ここで TypedArray は、型付き配列型のうちの 1 つです。

試してみましょう

構文

js

// アロー関数
every((element) => { /* ... */ } )
every((element, index) => { /* ... */ } )
every((element, index, array) => { /* ... */ } )

// コールバック関数
every(callbackFn)
every(callbackFn, thisArg)

// インラインコールバック関数
every(function(element) { /* ... */ })
every(function(element, index) { /* ... */ })
every(function(element, index, array){ /* ... */ })
every(function(element, index, array) { /* ... */ }, thisArg)

引数

callbackFn

各要素をテストする関数です。

この関数は、次の引数を伴って呼び出されます。

element

現在処理されている型付き配列の要素です。

index

現在処理されている型付き配列の要素の添字です。

array

every が実行されている型付き配列です。

thisArg 省略可

callbackFn を実行するときに this として使用すされる値です。

返値

コールバック関数が型付き配列のすべての要素について真値を返した場合は true。それ以外は false

解説

every は、与えられた callbackFn 関数を、配列に含まれる各要素に対して一度ずつ、 callbackFn偽値を返す要素が見つかるまで呼び出します。そのような要素が見つかると、every メソッドはただちに false を返します。 callbackFn がすべての要素に対して真値を返した場合、 everytrue を返します。

callbackFn は、要素の値、要素の添字、走査中の型付き配列オブジェクトという 3 つの引数を伴って呼び出されます。

thisArg 引数が every に与えられると、それがコールバックの this として使用されます。それ以外の場合は undefinedthis の値として使われます。 callbackFn が最終的に監視できる this の値は、関数から見た this の決定に関する一般的なルールによって決定されます。

every は呼び出された型付き配列を変更しません。

すべての型付き配列の要素の大きさをテストする

次の例は、型付き配列内のすべての要素が 10 以上であるかどうかテストします。

js

function isBigEnough(element, index, array) {
  return element >= 10;
}
new Uint8Array([12, 5, 8, 130, 44]).every(isBigEnough); // false
new Uint8Array([12, 54, 18, 130, 44]).every(isBigEnough); // true

アロー関数を使用して型付き配列の要素をテストする

アロー関数によって、同じテストをより短い構文で実現できます。

js

new Uint8Array([12, 5, 8, 130, 44]).every((elem) => elem >= 10); // false
new Uint8Array([12, 54, 18, 130, 44]).every((elem) => elem >= 10); // true

仕様書

Specification
ECMAScript Language Specification
# sec-%typedarray%.prototype.every

ブラウザーの互換性

BCD tables only load in the browser

関連情報