【JavaScript ECMAScript】Array::Array.prototype.findIndexインスタンスメソッドの使い方
Array.prototype.findIndex()インスタンスメソッドの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
Array.prototype.findIndex()メソッドは、呼び出し元の配列の各要素に対して指定されたテスト関数を実行し、そのテスト関数がtrueを返した最初の要素のインデックスを返すメソッドです。このメソッドは、配列の中から特定の条件に合致する要素の位置を知りたい場合に非常に役立ちます。
具体的には、findIndex()メソッドは引数としてコールバック関数を受け取ります。このコールバック関数は、配列の各要素に対して一度ずつ呼び出され、現在の要素の値、その要素のインデックス、そして操作対象の元の配列を引数として受け取ります。コールバック関数は、要素が条件を満たす場合にtrueを、そうでない場合にfalseを返します。
findIndex()メソッドは、コールバック関数がtrueを返した最初の要素のインデックスをすぐに返します。もし配列のすべての要素に対してコールバック関数がfalseを返し、条件を満たす要素が一つも見つからなかった場合は、-1を返します。
このメソッドは元の配列を変更することなく(非破壊的)、条件に合致する要素を効率的に検索できます。例えば、多数のデータが格納された配列から、特定のIDを持つ最初のレコードのインデックスを見つけたい場合や、特定の属性値を持つ最初のオブジェクトの位置を特定したい場合などに利用されます。システム開発において、データ検索のロジックを簡潔に記述するために頻繁に用いられる基本的なメソッドの一つです。
構文(syntax)
1array.findIndex(element => element === valueToFind);
引数(parameters)
callbackFn, thisArg = undefined
- callbackFn:
- array: 配列の各要素に対して実行されるコールバック関数。
- value: 現在処理されている配列の要素の値。
- index: 現在処理されている配列の要素のインデックス。
- array:
callbackFnに渡された配列。 - 戻り値: 判定結果を示す真偽値 (true または false)。
- thisArg = undefined:
- object:
callbackFnが実行される際にthisとして使用されるオブジェクト。省略された場合はundefinedになります。
- object:
戻り値(return)
number
指定された条件に一致する最初の要素のインデックス(位置)を返します。見つからなかった場合は -1 を返します。