TECH I.S.

JavaScript文字列

JavaScript文字列は、テキストを保存および操作するためのものです。

JavaScript文字列は、引用符で囲まれた0個以上の文字です。

let text = "ジョン ドゥー";

一重引用符または二重引用符を使用できます。

let carName1 = "Volvo XC60";  // 二重引用符 let carName2 = 'Volvo XC60';  // 一重引用符

文字列を囲む引用符と一致しない限り、文字列内で引用符を使用できます。

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.";

文字列は「We are the so-called」に切られます。

この問題を回避する解決策は、バックスラッシュエスケープ文字を使用することです。

バックスラッシュ (\) エスケープ文字は、特殊文字を文字列の文字に変換します。


コード

結果

説明

\' ' 一重引用符
\" " 二重引用符
\\ \ バックスラッシュ

シーケンス\"は文字列に二重引用符を挿入します。

let text = "We are the so-called \"Vikings\" from the north.";

シーケンス\'文字列に一重引用符を挿入します。

let text= 'It\'s alright.';

シーケンス\\文字列にバックスラッシュを挿入します。

let text = "The character \\ is called backslash.";

JavaScriptでは、他に6つのエスケープシーケンスが有効です。


コード

結果

\b バックスペース
\f フォームフィード
\n 改行
\r キャリッジリターン
\t 水平タブ
\v 垂直タブ

上記の6つのエスケープ文字は、もともとタイプライター、テレタイプ、およびファックス機を制御するために設計されました。 HTMLでは意味がありません。


長いコード行の分割

読みやすくするために、プログラマーは多くの場合、80文字を超えるコード行を避けることを好みます。

JavaScriptステートメントが1行に収まらない場合は、演算子の後で区切るのが最適です。

document.getElementById("demo").innerHTML = "こんにちはドリー!";

テキスト文字列内のコード行を単一のバックスラッシュで区切ることもできます。

document.getElementById("demo").innerHTML = "こんにちは \ ドリー!";

\は推奨される方法ではありません。普遍的なサポートがない可能性があります。一部のブラウザでは、\文字の後ろにスペースを使用できません。

文字列を分割するより安全な方法は、文字列の追加を使用することです。

document.getElementById("demo").innerHTML = "こんにちは " + "ドリー!";

バックスラッシュでコード行を分割することはできません。

document.getElementById("demo").innerHTML = \ "こんにちは ドリー!";


オブジェクトとしてのJavaScript文字列

通常、JavaScript文字列はプリミティブ値であり、リテラルから作成されます。

let x = "ジョン";

  ただし、文字列はキーワードnewを使用してオブジェクトとして定義することもできます。

let y = new String("ジョン");

let x = "ジョン"; let y = new String("ジョン");

Stringsオブジェクトを作成しないでください。

newキーワードはコードを複雑にし、実行速度を遅くします。

Stringオブジェクトは、予期しない結果をもたらす可能性があります。
==演算子を使用する場合、xとyは等しくなります。
let x = "ジョン"; let y = new String("ジョン");

===演算子を使用する場合、xとyは等しくありません
let x = "ジョン"; let y = new String("ジョン");

(x==y)(x===y)の違いに注目してください。
(x == y)真か偽か?
let x = new String("ジョン"); let y = new String("ジョン");

(x === y)真か偽か?
let x = new String("ジョン"); let y = new String("ジョン");

2つのJavaScriptオブジェクトを比較すると、常にfalseが返されます。

完全な文字列リファレンス

完全な文字列リファレンスについては、次のリンクを参照してください。
完全なJavaScript文字列リファレンス(開発準備中)
リファレンスには、すべての文字列プロパティとメソッドの説明と例が含まれています。

プログラミング学習を加速させる

プログラミングをプロの講師に教えてもらいませんか。

テックアイエスのプログラミングスクールは初心者も大歓迎です。年齢制限もありません。転職・副業に強く、挫折させない手厚いサポートで稼ぐ力を身につけましょう!

スクールの詳細