TypedArray.prototype.every()

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

構文

typedarray.every(callback[, thisArg])

引数

callback
各要素に対してテストを実行する関数です。次の 3 つの引数を取ります。
element
現在処理されている型付き配列の要素です。
index Optional
現在処理されている型付き配列の要素の添字です。
array Optional
every が実行されている型付き配列です。
thisArg Optional
callback を実行するときに this として使用すされる値です。

返値

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

解説

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

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

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

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

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

次の例は、型付き配列内のすべての要素が 10 より大きいかどうかテストします。

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

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

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

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

仕様書

仕様書
ECMAScript (ECMA-262)
TypedArray.prototype.every の定義

ブラウザーの互換性

Update compatibility data on GitHub
デスクトップモバイルサーバー
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung InternetNode.js
everyChrome 完全対応 45Edge 完全対応 14Firefox 完全対応 37IE 未対応 なしOpera 完全対応 36Safari 完全対応 9.1WebView Android 未対応 なしChrome Android 完全対応 45Firefox Android 完全対応 37Opera Android 未対応 なしSafari iOS 完全対応 9.3Samsung Internet Android 完全対応 5.0nodejs 完全対応 4.0.0

凡例

完全対応  
完全対応
未対応  
未対応

関連情報