Get to know MDN better
このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年9月.
findIndex() は Array インスタンスのメソッドで、配列内の指定されたテスト関数に合格する最初の要素のインデックスを返します。 テスト関数に合格する要素がなかった場合は -1 を返します。
find() メソッドも参照してください。こちらのメソッドは、配列内で見つかった要素の位置ではなく、値を返します。
配列のそれぞれの要素に対して実行する関数です。一致する要素が得られたことを示すには真値を返し、そうでなければ偽値を返してください。この関数は以下の引数で呼び出されます。
element配列内で現在処理されている要素です。
index配列内で現在処理されている要素のインデックス(位置)です。
arrayfindIndex() を呼び出した元の配列です。
thisArg 省略可callbackFn 内で this として使われるオブジェクトです。反復処理メソッドを参照してください。
テストに合格した配列の要素の位置を返します。それ以外の場合は、 -1 を返します。
findIndex() メソッドは反復処理メソッドです。配列の要素のそれぞれに対して、インデックスの昇順に一度ずつ callbackFn 関数を実行し、callbackFn 関数が真値を返すまで繰り返します。 findIndex() はその要素を返し、配列の反復処理を停止します。もし callbackFn が真値を返さない場合、 findIndex() は -1 を返します。これらのメソッドが一般的にどのように動作するのかについての詳細は、反復処理メソッドの節をご覧ください。
callbackFn は、値が割り当てられているものに限らず、配列中のすべてのインデックスに対して呼び出されます。疎配列では、空のスロットは undefined と同じ動作をします。
findIndex() メソッドは汎用的です。これは this 値に length プロパティと整数キーのプロパティがあることだけを期待します。
次の例では、配列の中で素数の入った最初の要素の位置を返し、素数が見つからなかった場合は -1 を返します。
メモ: isPrime() の実装は、説明のみを目的としています。実際のアプリケーションでは、繰り返し計算を避けるために、エラトステネスの篩などの、高度に最適化されたアルゴリズムを使用することをお勧めします。
array 引数は、配列内の別の要素にアクセスする場合、特に、その配列を参照する既存の変数がない場合に便利です。次の例では、最初に filter() を使用して正の値を抽出し、次に findIndex() を使用して、その値よりも小さい最初の要素を探します。
疎配列で undefined を検索することで、空スロットのインデックスを取得することができます。
findIndex() メソッドは this の length プロパティを読み込み、そのキーが length よりも小さい非負の整数である各プロパティにアクセスします。
| ECMAScript® 2027 Language Specification # sec-array.prototype.findindex |
Enable JavaScript to view this browser compatibility table.
This page was last modified on 2025年8月8日 by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.