JavaScript 字串
字串用於儲存文字
字串用引號括起來
使用引號
JavaScript 字串是零個或多個寫在引號內的字元。
你可以使用單引號或雙引號
注意
用單引號或雙引號建立的字串效果相同。
兩者之間沒有區別。
字串中的引號
你可以在字串中使用引號,只要它們不與包圍字串的引號匹配
示例
let answer1 = "It's alright";
let answer2 = "He is called 'Johnny'";
let answer3 = 'He is called "Johnny"';
自己動手試一試 »
模板字串
模板在 ES6 (JavaScript 2016) 中引入。
模板是包含在反引號 (`This is a template string`) 中的字串。
模板允許字串內部使用單引號和雙引號
注意
Internet Explorer 不支援模板。
字串長度
要獲取字串的長度,請使用內建的 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 中有六個其他有效的轉義序列
程式碼 | 結果 |
---|---|
\b | 退格 |
\f | 換頁符 |
\n | 換行 |
\r | 回車 |
\t | 水平製表符 |
\v | 垂直製表符 |
注意
上面六個跳脫字元最初是為了控制打字機、電傳打字機和傳真機而設計的。它們在 HTML 中沒有意義。
換行
為了可讀性,程式設計師通常喜歡避免過長的程式碼行。
換行語句的安全方法是在運算子之後
換行字串的安全方法是使用字串連線
模板字串
模板在 ES6 (JavaScript 2016) 中引入。
模板是包含在反引號 (`This is a template string`) 中的字串。
模板允許多行字串
注意
Internet Explorer 不支援模板。
JavaScript 字串作為物件
通常,JavaScript 字串是原始值,由字面量建立
let x = "John";
但是字串也可以用 new
關鍵字定義為物件
let y = new String("John");
不要建立字串物件。
new
關鍵詞會使程式碼複雜化並降低執行速度。
字串物件可能會產生意外的結果
請注意 (x==y)
和 (x===y)
之間的區別。
比較兩個 JavaScript 物件總是返回false。