ywork2020.com

Title

配列の全ての要素を関数でテストする

目次 (INDEX)

everyとは

ここで説明するevery とは次の語句からなるjavascriptのメソッドです。
every
読み: エブリ、エヴリィ
意味: 全て

目次に戻る

everyメソッドの概要

このメソッドは、配列の各要素(各値)を関数で実装された判定に掛けて合格するかを試行します。

メソッドの戻り値は真偽値で、全ての要素が判定に合格すればtrueを返し、不合格ならばfalseを返します。

これは、jQuery の every() と同じ結果を返します。

目次に戻る

構文

サンプルを見る前に構文を確認しておきます。

  • callback: 各要素(各値)に対して実行するコールバック関数です。引数は1つからオプションを含め3つまで受け付けます。
  • value: 現在処理されている配列の要素(値)です。
  • index: 現在処理されている配列のインデックス番号です。
  • array: 呼び出し元の配列の全要素(全の値)です。
  • ThisArg: callback内で this として使用する値です。
var boolean = arr.every(callback(value[, index[, array]])[, ThisArg])

目次に戻る

サンプルコードと実行結果

ここでは、5つの数値を代入した配列の全ての要素(全ての値)を関数の判定に掛けていきます。

具体的にいうと「10 は 60未満か = true」,「20 は 60未満か = true」...
という具合に各値をテストして、全ての値がtrueなので結果はtrueとなります。

サンプルコード: HTML
<body>
	<script>...</script>
</body>
  • 02: script (プログラムを実行します。)
サンプルコード: script
<script>
	let arrNum = [10, 20, 30, 40, 50];
	let fun60Low = (currentValue) => currentValue < 60;
	document.write(arrNum.every(fun60Low));
	/*03: let fun60Low = function(currentValue){return currentValue < 60}; と同じ意味です。*/
</script>
  • 02: arrNum (5つの数値が代入された配列です。)
  • 03: fun60Low (コールバック値を使って値が60未満かを判定する関数オブジェクトです。)
  • 04: every() (コールバック関数で全ての値をテストします。)
実行結果:

今回の結果はtrueでしたが、arrNumの列内に60以上の値が1つでもあればfalseが表示されます。

目次に戻る