Get to know MDN better
このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。
この機能は広く実装されており、多くのバージョンの端末やブラウザーで動作します。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 |
ブラウザー互換性一覧表を表示するには、JavaScript を有効にしてください。
より良いインターネットのための青写真。
このコンテンツの一部は、©1998–2026 個人の mozilla.org 協力者です。コンテンツはクリエイティブ・コモンズ・ライセンスのもとで利用できます。