lastIndexOf() メソッドは、呼び出す String オブジェクト中で、fromIndex から逆方向に検索し、指定された値が最後に現れるインデックスを返します。値が見つけられない場合、-1 を返します。

構文

str.lastIndexOf(searchValue[, fromIndex])

引数

searchValue
検索する値を表す文字列です。searchValue が空文字列だった場合、fromIndex が返されます。
fromIndexOptional
文字列内で検索を始める位置です。デフォルト値は +Infinity です。fromIndex >= str.length の場合、文字列全体が検索対象になります。fromIndex < 0 の場合、0 の場合と同じ動作をします。

戻り値

指定された値が最後に現れるインデックスを返します。見つからなかった場合は -1 です。

説明

文字列内の文字は左から右にインデックス化されます。一番最初の文字のインデックスは 0 で、一番最後の文字のインデックスは str.length - 1 です。

'canal'.lastIndexOf('a');     // 3 を返す
'canal'.lastIndexOf('a', 2);  // 1 を返す
'canal'.lastIndexOf('a', 0);  // -1 を返す
'canal'.lastIndexOf('x');     // -1 を返す
'canal'.lastIndexOf('c', -5); // 0 を返す
'canal'.lastIndexOf('c', 0);  // 0 を返す
'canal'.lastIndexOf('');      // 5 を返す
'canal'.lastIndexOf('', 2);   // 2 を返す

注: 'abab'.lastIndexOf('ab', 2) は 0 ではなく 2 を返します。fromIndex は検索の開始位置を示しているにすぎないからです。

大文字と小文字の区別

lastIndexOf() メソッドは 大文字と小文字を区別します。例えば、以下の表現は -1 を返します。

'Blue Whale, Killer Whale'.lastIndexOf('blue'); // returns -1

indexOf()lastIndexOf() の使用

以下の例は、 "Brave new world" という文字列において、与えられた値の位置を求めるために、indexOf()lastIndexOf() を使用しています。

var anyString = 'Brave new world';

console.log('The index of the first w from the beginning is ' + anyString.indexOf('w'));
// 8 を表示する
console.log('The index of the first w from the end is ' + anyString.lastIndexOf('w')); 
// 10 を表示する
console.log('The index of "new" from the beginning is ' + anyString.indexOf('new'));
// 6 を表示する
console.log('The index of "new" from the end is ' + anyString.lastIndexOf('new'));
// 6 を表示する

仕様

仕様書 策定状況 コメント
ECMAScript 1st Edition (ECMA-262) 標準 初期定義
ECMAScript 5.1 (ECMA-262)
String.prototype.lastIndexOf の定義
標準  
ECMAScript 2015 (6th Edition, ECMA-262)
String.prototype.lastIndexOf の定義
標準  
ECMAScript Latest Draft (ECMA-262)
String.prototype.lastIndexOf の定義
ドラフト  

ブラウザー実装状況

機能ChromeEdgeFirefoxInternet ExplorerOperaSafari
基本対応 あり あり16 あり あり
機能Android webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
基本対応 あり あり あり4 あり あり あり

関連情報

ドキュメントのタグと貢献者

このページの貢献者: sutara79, YuichiNukiyama, xl1, teoli, ethertank, Potappo, Mgjbot
最終更新者: sutara79,