string 文字列型
最終更新:2026-10-22
string 文字列型
string はテキスト値を表します。名前、メッセージ、ID など、文字として扱われるデータはすべて string で注釈します。日常のコードで最も頻繁に登場する型です。
| グループ | 基本型 |
|---|---|
| 種類 | 型 |
| strict モード | 不要 |
ℹ️ 説明 エディタは TypeScript を JavaScript にトランスパイルして実行します(型チェックなし)。型チェック結果は各サンプルの出力を参照してください。
📝 構文
let title: string = "TypeScript マニュアル";
let greeting = `こんにちは, ${title}`; // テンプレートリテラルで変数を埋め込める
⚙️ パラメータ
| `${expr}` | テンプレート文字列:バッククォートで囲み、${} 内に任意の式を埋め込めます |
|---|
戻り値:戻り値はありません。string は基本の型注釈であり、実行時コードを一切生成しません。
▶ サンプル
下のコードを編集して「試す」を押すと、トランスパイル実行結果を確認できます:
出力:
Item TS-1001 x3
15 ITEM TS-1001 X3
(トランスパイル後の実行出力。label を数値に変えてから .toUpperCase を呼ぶとコンパイルエラーになります)
💡 ポイント
ℹ️ 説明 注釈には必ず小文字の string を使い、ラッパーオブジェクト型の String は使わないでください。両者は別物で、String には new String() のようなオブジェクトも含まれます。
💡 ヒント テンプレート文字列は + による連結より読みやすく、複数行テキストもサポートします。日常ではこちらを優先しましょう。
⚠️ 注意 string は「テキストである」ことしか保証せず、内容の形式は保証しません。メールアドレスや電話番号のような形式検証は実行時の正規表現に頼る必要があり、型レベルでは対応できません。
🏷️ 関連基本型
💡 関連ケース
ケースは今後追加予定です。
📚 関連チュートリアル
❓ よくある質問
Q string と String の違いは何ですか?
A string はプリミティブ値の型、String はラッパーオブジェクト型(new String() で生成されるオブジェクトも受け入れます)です。日常の注釈はすべて小文字の string を使い、あらゆる文字列値に対応させます。
Q テンプレート文字列と + 連結の違いは何ですか?
A 結果は同じですが、テンプレート文字列は可読性が高く複数行に対応し、${} 内に任意の式を置けます。長い文字列を連結するときはテンプレート文字列がおすすめです。
Q "a" | "b" のようなリテラルユニオンと string はどんな関係ですか?
A string が全体集合、リテラルユニオンはその部分集合です。string は "a" | "b" に代入できませんが、逆方向は可能です。取りうる値を限定したいときはリテラルユニオンを使います(literal-types の項目を参照)。