【JavaScript ECMAScript】String::String.prototype.substringインスタンスメソッドの使い方
String.prototype.substring()インスタンスメソッドの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
String.prototype.substring()メソッドは、呼び出し元のStringオブジェクトから指定された開始インデックスから終了インデックスまでの部分文字列を抽出し、新しい文字列として返すメソッドです。このメソッドは、元の文字列を変更することなく、抽出された新しい文字列を生成します。
このメソッドは主に二つの引数を取ります。一つ目の引数であるindexStartは必須で、部分文字列の抽出を開始する位置を示す0から始まるインデックスです。このindexStartで指定された位置の文字は、結果の文字列に含まれます。二つ目の引数であるindexEndはオプションで、部分文字列の抽出を終了する位置を示すインデックスです。このindexEndで指定された位置の文字は結果には含まれません。もしindexEndが省略された場合、indexStartから文字列の最後までが抽出されます。
substring()メソッドにはいくつかの柔軟な挙動があります。例えば、もしindexStartがindexEndよりも大きい場合、このメソッドは自動的にそれらの引数の値を入れ替えて処理を行います。これにより、常に小さい方の値が開始インデックス、大きい方の値が終了インデックスとして扱われます。また、引数に負の値やNaN(非数)が渡された場合は0として処理され、引数の値が文字列の長さを超える場合は、文字列の長さとして扱われます。
このメソッドの戻り値は、抽出された部分文字列を含む新しいStringオブジェクトです。元の文字列に影響を与えることはありませんので、安全に部分文字列を取り出すことができます。
構文(syntax)
1const originalString = "Hello JavaScript World"; 2const subString = originalString.substring(6, 16);
引数(parameters)
indexStart, indexEnd
- indexStart: string: 抽出を開始する位置のインデックスを指定します。
- indexEnd: number: 抽出を終了する位置のインデックスを指定します。このインデックスの文字は含まれません。
戻り値(return)
String
指定されたインデックスの範囲で抽出された、元の文字列の新しい部分文字列を返します。