配列内の要素の位置(インデックスの値)を返すメソッド - indexOf, lastIndexOf
《 初回公開:2023/10/19 , 最終更新:未 》
【 目次 】
indexOf
indexOfメソッドは、配列内で指定した値の最初のインデックスを検索する。
配列に指定した値が存在する場合、その値の最初の出現位置のインデックスを返えし、存在しない場合は -1 を返へす。
- 構文
- array.indexOf(value, fromIndex)
- 引数
-
- value
- 配列内で検索する値。
- fromIndex (オプション)
- 検索を開始するインデックス、デフォルト値は 0 ,負の場合は検索は末尾からのオフセット。
指定した値に等しいかどうかの判定は===演算と同じ方法を使っておこなわれる。
配列の要素が文字列aである要素のインデックスを先頭から順にコンソールに出力する例。
const array = ["c", "a", "b", "c", "a", "d"];
var result = [];
let index = 0;
while (true) {
index = array.indexOf("a", index);
if (index == -1)
break;
else
console.log(index++);
}
// 1
// 4
同じようなメソッドにfindIndexメソッドがあるが、findIndexメソッドは要素の検索にコールバック関数を使用する。
lastIndexOf
lastIndexOfメソッドは、配列内で指定した値の最後のインデックスを検索する。
配列に指定した値が存在する場合、その値の最後の出現位置のインデックスを返えし存在しない場合は -1 を返へす。
- 構文
- array.lastIndexOf(value, fromIndex)
- 引数
-
- value
- 配列内で検索する値。
- fromIndex (オプション)
- 検索を開始するインデックス、デフォルト値は配列の末尾(array.length - 1) ,負の場合は検索は末尾からのオフセット。
指定した値に等しいかどうかの判定は===演算と同じ方法を使っておこなわれる。
配列の要素が文字列aである要素のインデックスを最後から順にコンソールに出力
const array = ["c", "a", "b", "c", "a", "d"];
var result = [];
let index = array.length - 1;
while (true) {
index = array.lastIndexOf("a", index);
if (index == -1)
break;
else
console.log(index--);
}
// 4
// 1
同じようなメソッドにfindLastIndexメソッドがあるが、findLastIndexメソッドは要素の検索にコールバック関数を使用する。