【JSリファレンス】Array.prototype.every()

更新日:2024/06/14

Array.prototype.every()は、Arrayオブジェクト(Arrayコンストラクターのインスタンス)プロトタイプチェーンに組み込まれるメソッドです。

このメソッドは、全ての要素が条件を満たすかどうかを判定します。

具体的には、各配列要素毎にコールバック関数を呼び出し、コールバック関数が false を呼び出した時点で、結果が false となります。
最後までコールバック関数が true を返した場合は、結果が true になります。

欠番インデックスは、コールバック関数呼び出しません。

 

■構文

Array.prototype.every ( callbackfn [ , thisArg ] )
  1. callbackfn: 各要素毎に呼び出される関数
  2. thisArg: 省略可能。
    callbackfnに渡されるthis値

    ※this値を渡す場合、callbackfnはアロー関数ではなくfunctionで定義する

コールバック関数が false とみなされる値を返した場合 false。
それ以外なら true。

配列要素数が0のとき、trueを返す。

※false とみなされる値については、次ページを参考にしてください。
【JavaScript】条件判定等で false とみなされる値

 

■callbackfnの構文

callbackfn ( value , index , array ){ return booleanValue; }
  1. value: 要素の値
  2. index: 要素のインデックス
  3. array: 対象となっている配列
true または false

 

■使用例

  // 全ての要素がNumber型かどうかを判定
const isAllNumber = array =>array.every( e=>typeof e === "number" );

console.log( isAllNumber([1,2,3]) ); // true
console.log( isAllNumber([1,"a",3]) );  // false

 

■備考

call()等でアレイライクオブジェクトを対象にすることも可能です。

const isAllNumber = array =>Array.prototype.every.call( 
  array, e=>typeof e === "number" 
);
console.log( isAllNumber({0:1,1:2,2:3,3:4,4:5,length:5}) );
  // true
console.log( isAllNumber({0:1,1:2,2:3,3:"a",4:5,length:5}) ); 
  // false

更新日:2024/06/14

書いた人(管理人):けーちゃん

スポンサーリンク

記事の内容について

null

こんにちはけーちゃんです。
説明するのって難しいですね。

「なんか言ってることおかしくない?」
たぶん、こんなご意見あると思います。

裏付けを取りながら記事を作成していますが、僕の勘違いだったり、そもそも情報源の内容が間違えていたりで、正確でないことが多いと思います。
そんなときは、ご意見もらえたら嬉しいです。

掲載コードについては事前に動作確認をしていますが、貼り付け後に体裁を整えるなどをした結果動作しないものになっていることがあります。
生暖かい視線でスルーするか、ご指摘ください。

ご意見、ご指摘はこちら。
https://jsref.affi-sapo-sv.com/info.php

 

このサイトは、リンクフリーです。大歓迎です。