【中学生でもわかる】JavaScriptの「.lastIndexOf()」を詳細に解説

programming
学習コースキャンペーンバナー

こんにちは、フローです。

今回は、JavaScriptのメソッド、「.lastIndexOf()」について詳しく解説します。

.lastIndexOf()とは?

「.lastIndexOf()」は、JavaScriptにおける配列や文字列のメソッドの一つです。

このメソッドの主な目的は、

指定した要素が配列や文字列内で最後に出現する位置(インデックス)を探し出すことです。

要素が存在しない場合、このメソッドは-1を返します。

どんな時に使うのか?

それでは、具体的に「.lastIndexOf()」がどのようなシチュエーションで役立つのか、

いくつかの典型的なパターンを見ていきましょう。

パターン1:特定の要素の最後の位置を見つける

配列や文字列内の特定の要素が最後に出現する位置を見つける際に、

「.lastIndexOf()」を使用します。

let fruits = ["apple", "banana", "cherry", "apple"];
let lastIndex = fruits.lastIndexOf("apple");
console.log(lastIndex); // 結果: 3

この例では、”apple”の最後の位置を探しています。

最後の”apple”は配列の4番目の要素(インデックス3)に位置しています。

パターン2:配列に特定の要素が存在するか確認する

配列内に特定の要素が存在するかどうかを確認するために、

「.lastIndexOf()」を使用することもできます。

存在する場合はその要素の最後の位置を返し、存在しない場合は-1を返します。

let fruits = ["apple", "banana", "cherry", "apple"];
if(fruits.lastIndexOf("mango") !== -1) {
    console.log("マンゴーがあります!");
} else {
    console.log("マンゴーがありません!");
}

この例では、

「mango」がfruits配列に存在するかどうかを確認しています。

結果は「マンゴーがありません!」と表示されます。

パターン3:配列内で重複する要素の最後の位置を探す

配列内で同じ要素が複数存在する場合、

その最後の位置を探すために「.lastIndexOf()」を使用します。

let numbers = [1, 2, 3, 2, 4];
let lastIndex = numbers.lastIndexOf(2);
console.log(lastIndex); // 結果: 3

この例では、「2」が最後に出現する位置(インデックス)を探しています。

“2”は4番目の位置(インデックスは3)にあります。

.lastIndexOf()の注意点

「.lastIndexOf()」を使用する際の注意点も共有します。

それは「.lastIndexOf()」が厳密な等価性(===)を使用して要素を比較するということです。

これは数値と文字列など、

異なる型の値を比較する際に問題を引き起こす可能性があります。

let numbers = [1, 2, 3, 4, 5];
let badIndex = numbers.lastIndexOf('2');
console.log(badIndex); // 結果: -1

この例では、数値の2を探していますが、

文字列の’2’で検索をかけているため、

存在しないと判定され、-1が出力されます。

要素を探す際は型の違いに注意する必要があります。

まとめ

今回はJavaScriptの「.lastIndexOf()」について詳しく見てきました。

特定の要素が最後に出現する位置を探すためのツールとして、

「.lastIndexOf()」は非常に便利なメソッドです。

ただし、その使用には注意が必要で、

特に型の違いによる問題に注意しながら使用することが重要です。

これからもJavaScriptを学んでいく中で、

「.lastIndexOf()」がどのように役立つのか探してみてください。

レッツチャレンジ!