JavaScript 樣板文字的指南

在 ES2015(也稱為 ES6)中引入的樣板文字提供了一種新的聲明字符串的方式,同時還提供了一些新的有趣的構造方法,並且已經被廣泛地使用。 樣板文字介紹 多行字符串 插值 樣板標籤 樣板文字介紹 樣板文字是 ES2015 / ES6 中的一個新功能,與 ES5 及其以下版本相比,它以一種新穎的方式處理字符串。 從外觀上看,語法非常簡單,只需使用反引號(`)而不是單引號或雙引號即可: const a_string = `something` 它們之所以獨一無二,是因為它們提供了很多普通字符串所不具備的功能,尤其是: 它們提供了一種很好的語法來定義多行字符串 它們提供了一種簡單的方式將變量和表達式插入字符串中 它們允許您使用樣板標籤創建特定領域的語言(DSL,即“domain specific language”),例如 React 中的 Styled Components 用於為組件定義 CSS 讓我們逐一詳細介紹這些功能。 多行字符串 在 ES6 之前,要創建跨兩行的字符串,您必須在行末使用反斜線字符(\): const string = 'first part \ second part' 這允許在兩行上創建字符串,但實際呈現在只有一行上: first part second part 要將字符串呈現為多行,您需要在每行末尾明確添加 \n,如下所示: const string = 'first line\n \ second line' 或者 const string = 'first line\n' + 'second line' 樣板文字使多行字符串變得更簡單。...

JavaScript 類型

有些時候你可能會聽說 JS 是一種無類型的語言,但這是不正確的。確實,你可以將各種不同的類型賦值給變量,但 JavaScript 是有類型的。特別是,它提供了原始類型和對象類型。 原始類型 數字 字符串 模板字面量 布林值 null undefined 對象類型 如何查找變量的類型 原始類型 原始類型有: 數字 字符串 布林值 符號 還有兩種特殊類型: null undefined 我們將在下一節中詳細介紹它們。 數字 在內部,JavaScript 只有一種數字類型:每個數字都是浮點數。 數字字面量是在源代碼中表示的數字,根據它的寫法不同,它可以是整數字面量或浮點數字面量。 整數: 10 5354576767321 0xCC // 十六進制 浮點數: 3.14 .1234 5.2e4 //5.2 \* 10^4 字符串 字符串類型是一個字符序列。它在源代碼中被定義為字符串字面量,該字面量用引號或雙引號括起來。 'A string' "Another string" 字符串可以跨多行使用反斜杠: "A \ string" 字符串可以包含轉義序列,在打印字符串時可以被解釋,比如使用 \n 創建新行。當你需要在被引號括起來的字符串中輸入引號時,反斜杠也是很有用的,以防止被解釋為結束引號的字符: 'I\'m a developer' 字符串可以使用 + 運算符拼接: "A " + "string" 模板字面量 在 ES2015 中引入的模板字面量是一種更強大的定義字符串的方式。 const a\_string = `something` 你可以執行字符串替換,將任何 JS 表達式的結果嵌入其中:...

javascript-quotes

#JavaScript中的引號 JavaScript允許使用3種類型的引號: 單引號 雙引號 反引號 第一種和第二種本質上是相同的: const test = 'test' const bike = "bike" 在使用一種引號或另一種引號時,幾乎沒有什麼區別。唯一的區別在於必須對用於界定字符串的引號字符進行轉義: const test = 'test' const test = 'te\'st' const test = 'te"st' const test = "te\"st" const test = "te'st" 有很多樣式指南建議始終使用一種風格而不是另一種。 我個人偏好始終使用單引號,在HTML中使用雙引號。 反引號是JavaScript的最新添加,自2015年的ES6引入以來。 它們具有一個獨特的功能:它們允許多行字符串。 使用逃逸字符,也可以使用常規字符串進行多行字符串: const multilineString = 'A string\non multiple lines' 使用反引號,您可以避免使用逃逸字符: const multilineString = `A string on multiple lines` 不僅如此,您還可以使用${}語法插值變量: const multilineString = `A string on ${1+1} lines` 我在另一篇文章中介紹了使用反引號的字符串(稱為模板文字),該文章更深入地介紹了細節。