JavaScriptのStringとは?

JavaScriptにおける文字列とは?

JavaScriptにおいて、文字列(String)はテキストデータを表すために使用される基本的なデータ型です。数値やブーリアン値と並んで、JavaScriptプログラミングにおいて最も頻繁に使用されるデータ型の1つです。本稿では、JavaScriptにおける文字列の基礎から、その操作方法、そしてStringオブジェクトが提供する便利なメソッドまで、詳細に解説していきます。

文字列の定義と表現

JavaScriptでは、文字列はシングルクォート('')、ダブルクォート("")、またはバックティック(``)で囲まれた文字のシーケンスとして定義されます。例えば、


let str1 = 'これは文字列です。';
let str2 = "これも文字列です。";
let str3 = `これもまた文字列です。`;

上記3つは全て有効な文字列の定義であり、それぞれ変数`str1`、`str2`、`str3`に格納されています。シングルクォートとダブルクォートは機能的に違いはありませんが、HTML属性内での使用など、状況に応じて使い分けることが推奨されます。バックティックは「テンプレートリテラル」と呼ばれるもので、複数行の文字列や式展開を容易に行うことができます。

Stringオブジェクトと文字列操作

JavaScriptの文字列はプリミティブ型であり、オブジェクトではありません。しかし、JavaScriptは文字列をオブジェクトであるかのように扱うための便利なメソッドを提供しています。これらのメソッドは、グローバルオブジェクトである`String`オブジェクトのプロパティとして定義されています。

例えば、文字列の長さを取得するには、`length`プロパティを使用します。


let message = "Hello, world!";
let messageLength = message.length; // messageLengthは13になります

また、文字列を連結するには`+`演算子を使用します。


let greeting = "こんにちは";
let name = "田中";
let message = greeting + "、" + name + "さん"; // messageは"こんにちは、田中さん"になります

その他、`String`オブジェクトは、文字列の検索、置換、切り出しなど、様々な操作を行うためのメソッドを提供しています。代表的なものを以下の表にまとめます。

メソッド 説明
indexOf() 指定された部分文字列が最初に現れる位置を返します。見つからない場合は-1を返します。
lastIndexOf() 指定された部分文字列が最後に現れる位置を返します。見つからない場合は-1を返します。
substring() 元の文字列から指定された開始位置と終了位置までの部分文字列を返します。
slice() substring()と似ていますが、負のインデックスを使用できます。
toUpperCase() 文字列を大文字に変換します。
toLowerCase() 文字列を小文字に変換します。
replace() 指定されたパターンに一致する部分文字列を別の文字列に置き換えます。
trim() 文字列の先頭と末尾の空白文字を取り除きます。

参考資料

関連するQA

  1. Q: JavaScriptで文字列を数値に変換するにはどうすればよいですか?

    A: `parseInt()`関数または`parseFloat()`関数を使用します。`parseInt()`は整数への変換、`parseFloat()`は浮動小数点数への変換を行います。

  2. Q: JavaScriptで文字列内の特定の文字をエスケープするにはどうすればよいですか?

    A: バックスラッシュ(\)を使用してエスケープします。例えば、シングルクォート(')をエスケープするには、\'と記述します。

  3. Q: テンプレートリテラルを使用するメリットは何ですか?

    A: テンプレートリテラルを使用すると、複数行の文字列を簡単に表現できるだけでなく、変数や式の埋め込みが容易になります。また、タグ付きテンプレートと呼ばれる機能を使用して、文字列の出力方法をカスタマイズすることもできます。

その他の参考記事:JavaScript String 文字列オブジェクト