JavaScript文字列
JavaScript文字列は、テキストを保存および操作するためのものです。
JavaScript文字列は、引用符で囲まれた0文字以上です。
例
let text = "John Doe";
一重引用符または二重引用符を使用できます。
例
let carName1 = "Volvo XC60";
// Double quotes
let carName2 = 'Volvo XC60'; // Single quotes
文字列を囲む引用符と一致しない限り、文字列内で引用符を使用できます。
例
let answer1 = "It's alright";
let answer2 = "He is called 'Johnny'";
let answer3 = 'He is called "Johnny"';
文字列の長さ
文字列の長さを見つけるには、組み込みのlength
プロパティを使用します。
例
let text = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
let length = text.length;
エスケープ文字
文字列は引用符で囲む必要があるため、JavaScriptはこの文字列を誤解します。
let text = "We are the so-called "Vikings" from the north.";
文字列は「私たちはいわゆる」に切り刻まれます。
この問題を回避するための解決策は、円記号のエスケープ文字を使用することです。
バックスラッシュ(\
)エスケープ文字は、特殊文字を文字列文字に変換します。
Code | Result | Description |
---|---|---|
\' | ' | Single quote |
\" | " | Double quote |
\\ | \ | Backslash |
シーケンス\"
は、文字列に二重引用符を挿入します。
例
let text = "We are the so-called \"Vikings\" from the north.";
シーケンス\'
は、文字列に一重引用符を挿入します。
例
let text= 'It\'s alright.';
シーケンス\\
は、文字列に円記号を挿入します。
例
let text = "The character \\ is called backslash.";
他の6つのエスケープシーケンスがJavaScriptで有効です。
Code | Result |
---|---|
\b | Backspace |
\f | Form Feed |
\n | New Line |
\r | Carriage Return |
\t | Horizontal Tabulator |
\v | Vertical Tabulator |
上記の6つのエスケープ文字は、もともとタイプライター、テレタイプ、およびファックス機を制御するために設計されました。HTMLでは意味がありません。
長いコード行を壊す
読みやすくするために、プログラマーは80文字を超えるコード行を避けたいことがよくあります。
JavaScriptステートメントが1行に収まらない場合、JavaScriptステートメントを分割するのに最適な場所は演算子の後にあります。
例
document.getElementById("demo").innerHTML =
"Hello Dolly!";
1つの円記号を使用して、テキスト文字列内のコード行を分割することもできます。
例
document.getElementById("demo").innerHTML =
"Hello \
Dolly!";
この\
方法は推奨される方法ではありません。普遍的なサポートがない可能性があります。
一部のブラウザでは、文字の後ろにスペースを使用できません\
。
文字列を分割するより安全な方法は、文字列の加算を使用することです。
例
document.getElementById("demo").innerHTML = "Hello " +
"Dolly!";
バックスラッシュでコード行を分割することはできません。
例
document.getElementById("demo").innerHTML = \
"Hello Dolly!";
オブジェクトとしてのJavaScript文字列
通常、JavaScript文字列は、リテラルから作成されたプリミティブ値です。
let x = "John";
new
ただし、文字列は、キーワード:を使用してオブジェクトとして定義することもできます。
let y = new String("John");
例
let x = "John";
let y = new String("John");
Stringsオブジェクトを作成しないでください。
キーワードはコードを複雑にし、new
実行速度を遅くします。
文字列オブジェクトは予期しない結果を引き起こす可能性があります。
演算子を使用する場合==
、xとyは等しい:
let x = "John";
let y = new String("John");
演算子を使用する場合===
、xとyは等しくありません:
let x = "John";
let y = new String("John");
との違いに注意して(x==y)
ください(x===y)
。
(x == y)
正しいか間違っているか?
let x = new String("John");
let y = new String("John");
(x === y)
正しいか間違っているか?
let x = new String("John");
let y = new String("John");
2つのJavaScriptオブジェクトを比較すると、常にfalseが返されます。
完全な文字列リファレンス
完全な文字列リファレンスについては、次のURLにアクセスしてください。
このリファレンスには、すべての文字列プロパティとメソッドの説明と例が含まれています。