如何使用 JavaScript 转义字符串中的引号

转义字符串中的引号

How to Escape Quotes in a String using JavaScript

要转义字符串中的单引号或双引号,请在字符串内容中的每个单引号或双引号之前使用反斜杠\字符,例如
'that\'s it'.

索引.js
const escapeSingle = 'it\'s a string'; console.log(escapeSingle) // 👉️ it's a string const escapeDouble = "bobby\"hadz" console.log(escapeDouble) // 👉️ bobby"hadz
当我们使用反斜杠字符转义单引号或双引号时,我们指示 JavaScript 我们希望将引号视为文字单引号或双引号字符,而不是字符串结尾字符。

如果在用单引号引起来的字符串中使用单引号,则会过早地终止该字符串。

但是,当您使用反斜杠转义单引号时,情况就不是这样了。

您可以使用相同的方法来转义字符串中的双引号。

索引.js
const escapeDouble = "He said: \"test 123\"" console.log(escapeDouble) // 👉️ He said: "test 123"

我们使用反斜杠\字符来转义字符串中的每个双引号。

可以通过更改字符串的外部引号来避免转义引号。
索引.js
const withSingle = "it's a string"; console.log(withSingle) // 👉️ it's a string const withDouble = 'He said: "test 123"' console.log(withDouble) // 👉️ He said: "test 123"

我们交替使用双引号和单引号,因此我们不必转义它们。

请注意,您还可以backticks在定义存储字符串的变量时使用。这允许您在字符串中同时使用单引号和双引号而无需转义它们。
索引.js
const withBoth = `it's a "test 123"`; console.log(withBoth) // 👉️ it's a "test 123"
该字符串被包裹起来,backticks因此我们不必在其内容中转义单引号和双引号。

要将反斜杠\字符添加到字符串中,请将两个反斜杠并排添加。第一个反斜杠转义第二个反斜杠,因此第二个反斜杠按字面意思。

索引.js
const addBackslash = "He said: \\\"test 123\\\"" console.log(addBackslash) // 👉️ He said: \"test 123\"

我们有 3 个相邻的反斜杠。第一个反斜杠转义第二个反斜杠,因此它由 JavaScript 按字面解释。第三个反斜杠用于转义双引号。

这是一个更现实的例子,我们只在字符串中添加一个反斜杠。

索引.js
const addBackslash = "BMW \\1996\\" console.log(addBackslash) // 👉️ BMW \1996\

如果需要显示字符串中的转义字符,请使用
JSON.stringify()方法。

索引.js
const addBackslash = 'BMW \\1996\\'; console.log(addBackslash); // 👉️ BMW \1996\ const withEscapeChars = JSON.stringify(addBackslash); console.log(withEscapeChars); // 👉️ "BMW \\1996\\"

JSON.stringify

方法将 JavaScript 值转换为 JSON 字符串

将值转换为 JSON 字符串时,其输出包含转义字符。