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 2022年8月.
findLast() は Array インスタンスのメソッドで、配列を逆順に反復処理し、指定されたテスト関数を満たす最初の要素の値を返します。 テスト関数を満たす要素がない場合は undefined が返されます。
検索を行う場合は以下のメソッドが必要です。
配列のそれぞれの要素に対して実行する関数です。一致する要素が得られたことを示すには真値を返し、そうでなければ偽値を返してください。この関数は以下の引数で呼び出されます。
element配列内で現在処理されている要素です。
index配列内で現在処理されている要素のインデックス(位置)です。
arrayfindLast() を呼び出した元の配列です。
thisArg 省略可callbackFn 内で this として使われるオブジェクトです。反復処理メソッドを参照してください。
指定されたテスト関数を満たす、配列中の最も大きいインデックス値を持つ要素の値。一致する要素が見つからない場合は undefined となります。
findLast() メソッドは反復処理メソッドです。配列の要素のそれぞれに対して、インデックスの降順に一度ずつ callbackFn 関数を実行し、callbackFn 関数が真値を返すまで繰り返します。 findLast() はその要素を返し、配列の反復処理を停止します。もし callbackFn が真値を返さない場合、 findLast() は undefined を返します。これらのメソッドが一般的にどのように動作するのかについての詳細は、反復処理メソッドの節をご覧ください。
callbackFn は、値が割り当てられているものに限らず、配列中のすべてのインデックスに対して呼び出されます。疎配列では、空のスロットは undefined と同じ動作をします。
findLast() メソッドは汎用的です。これは this 値に length プロパティと整数キーのプロパティがあることだけを期待します。
この例では、配列要素のプロパティに基づいたテストを作成する方法を示します。
先の例は、アロー関数とオブジェクトの構造分解を使用して書くことができるかもしれません。
以下の例では、配列の最後の要素で素数の最後の要素を返します。素数がない場合は undefined を返しています。
メモ: isPrime() の実装は、説明のみを目的としています。実際のアプリケーションでは、繰り返し計算を避けるために、エラトステネスの篩などの、高度に最適化されたアルゴリズムを使用することをお勧めします。
array 引数は、配列内の別の要素にアクセスする場合、特に、その配列を参照する既存の変数がない場合に便利です。次の例では、最初に filter() を使用して正の値を抽出し、次に findLast() を使用して、その隣よりも小さい最後の要素を探します。
疎配列の空のスロットは処理され、 undefined と同じように扱われます。
findLast() メソッドは this の length プロパティを読み込み、次にキーが length より小さい非負の整数である各プロパティにアクセスします。
| ECMAScript® 2027 Language Specification # sec-array.prototype.findlast |
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.