Caution

お使いのブラウザはJavaScriptが実行できない状態になっております。
当サイトはWebプログラミングの情報サイトの為、
JavaScriptが実行できない環境では正しいコンテンツが提供出来ません。
JavaScriptが実行可能な状態でご閲覧頂くようお願い申し上げます。

JavaScript辞典

  1. トップページ
  2. JavaScript辞典
  3. 文字列.startsWith() / endsWith()

文字列.startsWith() / endsWith()対応: ES6(ECMAScript 2015)

文字列が指定した文字列で始まるか、または終わるかを判定します。戻り値は『true』か『false』です。

構文
// 文字列が指定した文字列で始まるかを判定します。
文字列.startsWith("検索文字列")
文字列.startsWith("検索文字列", 開始位置)

// 文字列が指定した文字列で終わるかを判定します。
文字列.endsWith("検索文字列")
文字列.endsWith("検索文字列", 長さ)
メソッド一覧
メソッド概要
startsWith("検索文字列")文字列が指定した文字列で始まるかを判定します。一致すれば『true』、しなければ『false』を返します。
startsWith("検索文字列", 開始位置)指定した位置を先頭とみなして判定を行います。
endsWith("検索文字列")文字列が指定した文字列で終わるかを判定します。一致すれば『true』、しなければ『false』を返します。
endsWith("検索文字列", 長さ)文字列の先頭から指定した長さまでの範囲で末尾判定を行います。
サンプルコード
var url = "https://wp-p.info/index.php";

// URLがhttpsで始まるかを判定します。
console.log(url.startsWith("https")); // 『true』と出力されます。
console.log(url.startsWith("http://")); // 『false』と出力されます。

// URLが.phpで終わるかを判定します。
console.log(url.endsWith(".php")); // 『true』と出力されます。
console.log(url.endsWith(".html")); // 『false』と出力されます。

// 開始位置を指定して判定します。
console.log(url.startsWith("wp-p", 8)); // 位置8から判定するため『true』と出力されます。

// 長さを指定して末尾判定します。
var filename = "report_2026.pdf";
console.log(filename.endsWith("2026", 11)); // 先頭から11文字の範囲で判定し『true』と出力されます。
実行結果

上記のコードを実行すると、コンソールには以下が出力されます。

true    // 『https』で始まっている
false   // 『http://』では始まっていない
true    // 『.php』で終わっている
false   // 『.html』では終わっていない
true    // 位置8から見て『wp-p』で始まっている
true    // 先頭11文字の末尾が『2026』である
概要

『文字列.startsWith()』は文字列の先頭が指定した文字列と一致するかを判定し、『文字列.endsWith()』は末尾が一致するかを判定するメソッドです。従来は『文字列.indexOf()』で位置を調べて判定する必要がありましたが、これらのメソッドを使えば直感的に記述できます。

URLのプロトコル判定やファイル拡張子のチェックなど、文字列の先頭や末尾を調べる処理で特に便利です。いずれも大文字と小文字を区別するため、大文字・小文字を無視したい場合は『文字列.toLowerCase()』で統一してから判定してください。

なお、文字列が特定の文字列を含むかどうかだけを調べたい場合は『文字列.includes()』が適しています。

記事の間違いや著作権の侵害等ございましたらお手数ですがまでご連絡頂ければ幸いです。