Menu
Coddy logo textTech

文字列の基本

CoddyのJavaScriptジャーニー「論理とフロー」セクションの一部 — レッスン 1/65。

JavaScriptにおいて、文字列はイミュータブル(不変)です。これは、一度文字列が作成されると、その値を変更できないことを意味します。文字列を変更するように見える操作は、実際には新しい文字列を作成します。

以下に例を示します:

let str = "Hello";
str[0] = "h"; // これは動作しません
console.log(str); // 依然として "Hello" と出力されます

文字列に対して操作を行うと、新しい文字列が作成されます:

let str = "Hello";
let newStr = str + " World";
console.log(str);     // "Hello"
console.log(newStr);  // "Hello World"

文字列と配列は異なるデータ型ですが、多くの似たメソッドを共有しています。例えば、どちらも次のようなメソッドをサポートしています:

  • includes()
  • indexOf()
  • length
  • slice()

しかし、配列とは異なり、文字列はイミュータブル(不変)であるため、配列を修正するメソッド(push()pop()など)は文字列には存在しないことに注意してください。

quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

チートシート

JavaScriptの文字列は不変(イミュータブル)です。一度作成されると、その値を変更することはできません。どのような操作も新しい文字列を作成します。

let str = "Hello";
str[0] = "h"; // これは動作しません
console.log(str); // 依然として "Hello" を出力します
let str = "Hello";
let newStr = str + " World";
console.log(str);     // "Hello"
console.log(newStr);  // "Hello World"

文字列と配列は、includes()indexOf()lengthslice() のような似たメソッドを共有していますが、文字列には push()pop() のような配列変更メソッドはありません。

自分で試してみよう

このレッスンにはコードチャレンジは含まれていません。

quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

論理とフローのすべてのレッスン