記事の内容
findIndex
findIndexメソッドは、Arrayオブジェクト内の条件を満たした最初のインデックス番号を取得します。
記法
条件を満たす最初のインデックス番号 = 配列.findIndex ( function ( value, index, array) {
return 処理;
}, this);
value : 配列の値が1つずつ渡される
index : 配列のキーが1つずつ渡される
array : 配列が渡される
this : コールバック関数内のthisの参照オブジェクト
例
let ary = [2, 4, 6, 1];
const result = ary.findIndex(function(value, index, array) {
console.log("value : " + value);
console.log("index : " + index);
console.log("array : " + array);
console.log("============================= ");
return value > 5;
});
console.log("result : " + result);
出力結果
value : 2
index : 0
array : 2,4,6,1
=============================
value : 4
index : 1
array : 2,4,6,1
=============================
value : 6
index : 2
array : 2,4,6,1
=============================
result : 2
上記は3回目のチェックで条件を満たすのでindex番号の2を返します。
アロー関数
記法
条件を満たす最初のインデックス番号 = 配列.findIndex ( ( value, index, array ) => 処理 )
例
let ary = [2, 4, 6, 1];
const result = ary.findIndex((value) => value > 5);
console.log("result : " + result);
出力結果
result : 2
コールバック関数
記法
コールバック関数
条件を満たす最初のインデックス番号 = 配列.findIndex ( callbackFn )
例
let ary = [2, 4, 6, 1];
// コールバック関数
function callbackFn(value){
return value > 5;
}
const result = ary.findIndex(callbackFn);
console.log("result : " + result);
出力結果
result : 2
コールバック関数(thisあり)
記法
コールバック関数
条件を満たす最初のインデックス番号 = 配列.findIndex ( callbackFn, this )
例
let ary = [2, 4, 6, 1];
// コールバック関数
function callbackFn(value){
return value > this;
}
const result = ary.findIndex(callbackFn, 5);
console.log("result : " + result);
出力結果
result : 2