【JavaScript】indexOf メソッドで文字列を検索する方法

JavaScriptのindexOfメソッドは、文字列内で特定のサブストリングを見つけるために非常に便利です。ここでは、このメソッドを使った文字列の効果的な検索方法について紹介します。

文字列での検索

JavaScriptの文字列において、indexOfメソッドはサブストリングを検索するのに役立ちます。以下は基本的な使用例です。

const text = 'Hello, world!';

const index1 = text.indexOf('Hello');  // 0
const index2 = text.indexOf('world');  // 7
const index3 = text.indexOf('JavaScript'); // -1 (見つからない場合)

このメソッドは、最初に見つかったサブストリングの先頭の位置を返します。もし見つからない場合は-1が返ります。検索の開始位置を指定するオプションの引数も利用できます。

配列での検索

同様に、indexOfメソッドは配列でも利用可能で、特定の要素を検索するのに役立ちます。

const fruits = ['apple', 'banana', 'orange', 'apple', 'grape'];

const index1 = fruits.indexOf('apple'); // 0
const index2 = fruits.indexOf('banana'); // 1
const index3 = fruits.indexOf('grape');  // 4
const index4 = fruits.indexOf('pear');   // -1

配列の場合も、最初の一致した要素のインデックスを返します。注意点として、型も一致している必要があります。

注意事項

indexOfメソッドは厳密な比較(===)を行うため、型も一致している必要があります。
もし全ての一致した位置を取得したい場合は、ループを使用するか、正規表現を検討することが重要です。

まとめ

JavaScriptのindexOfメソッドを使って、文字列内での効果的な検索を実現しましょう。