JavaScriptのStringオブジェクトのlastIndexOf()メソッドについて記載します。
概要、実際のサンプルコードを交えて構文などの使い方をまとめてみました。
JavaScriptのStringオブジェクトとは?
JavaScript(JS) のStringオブジェクト(文字列)は、他の言語と比べて、動的なデータ型として定義されています。
そして、 他のプログラミング言語 (C 言語など) とは異なり、文字列のメソッドが豊富に用意されています。
また、文字列と数値を効率的に相互変換する方法も提供されています。
事前に定義されたメソッドを利用して文字列操作が容易に出来る点も他言語と比べても有利な点ですが、他の言語と比べて一部の文字列処理が遅くなることがあるとも言われています。
それでは、次に本題の説明に移ります。
JavaScriptのStringオブジェクトのlastIndexOf()概要
lastIndexOf()は、文字列の末尾から指定した文字列を検索し、その文字列の最後のインデックスを返します。
構文、使い方
構文:str.lastIndexOf(searchValue[, fromIndex])
使い方:文字列str内からsearchValueを検索し、最後に見つかった位置のインデックスを返します。fromIndexを指定すると、その位置から検索を開始します。
引数について
lastIndexOf()の引数は、検索したい文字列や文字列を含むオブジェクト、検索を開始するインデックスを指定します。
返り値について
lastIndexOf()は、指定した文字列が最後に現れる位置のインデックスを返します。
このメソッドを利用した便利なテクニック
lastIndexOf()を使うと、文字列内の特定の文字列の最後のインデックスを取得できます。
これを使うと、文字列内の特定の文字列が最後に出現する位置を検索したり、文字列内の特定の文字列が最後に出現する位置までの文字列を取得したりすることができます。
現場で実際にどのように使われているか
StringオブジェクトのlastIndexOf()は、文字列の末尾から指定した文字列を検索し、その文字列が最後に見つかった位置のインデックスを返します。
例えば、次のコードは、文字列””Hello World””の末尾から文字列””World””を検索して、その文字列が最後に見つかった位置のインデックスを返します。
1 2 3 4 |
var str = ""Hello World""; var index = str.lastIndexOf(""World""); // index = 6 |
JavaScriptのStringオブジェクトのlastIndexOf()と一緒によく使われる処理
StringオブジェクトのlastIndexOf()は、文字列内の指定した文字列の最後のインデックスを取得するために使用されます。
そのため、lastIndexOf()を使用して文字列内の最後の文字列を取得するために、substring()を使用することがよくあります。
substring()は、指定したインデックスから文字列を取得するために使用されます。
使用する上での注意点
lastIndexOf()は、検索文字列が見つからない場合は-1を返します。
JavaScriptのStringオブジェクトのlastIndexOf()と似た処理のJSメソッド、違い
indexOfと名前も似ていますが、下記違いがあります。
- indexOf():文字列内で指定した文字列が最初に出現する位置を返す
- lastIndexOf():文字列内で指定した文字列が最後に出現する位置を返す
JavaScriptのStringオブジェクトのlastIndexOf()を使ったサンプルコードの紹介
StringオブジェクトのlastIndexOf()を使ったサンプルコード
1 2 3 4 |
// 例1 let str = 'Hello World'; let index = str.lastIndexOf('l'); console.log(index); |
1 2 3 4 |
// 例2 let str = 'Hello World'; let index = str.lastIndexOf('o'); console.log(index); |
1 2 3 4 |
// 例3 let str = 'Hello World'; let index = str.lastIndexOf('d'); console.log(index); |
JavaScript stringオブジェクトの他メソッドについて
JavaScriptのstringオブジェクトの他メソッドについては、下記記事にもまとめていますので参考にしてみてください
また、JavaScriptの公式ドキュメントであるMDNで記載されているstringオブジェクトのlastIndexメソッドについても補足としてリンクを貼っておきます。参考にしてみてください。