转义字符
如果你的字符串用单引号括起来(即),则需要使用反斜杠 \
来转义内部文字引号
var text = 'L\'albero means tree in Italian';
console.log( text ); \\ "L'albero means tree in Italian"
双引号也是如此:
var text = "I feel \"high\"";
如果你在 String 中存储 HTML 表示,则必须特别注意转义引号,因为 HTML 字符串大量使用引用,即在属性中:
var content = "<p class=\"special\">Hello World!</p>"; // valid String
var hello = '<p class="special">I\'d like to say "Hi"</p>'; // valid String
HTML 字符串中的引号也可以使用 '
(或 '
)作为单引号和 "
(或 "
)作为双引号来表示。
var hi = "<p class='special'>I'd like to say "Hi"</p>"; // valid String
var hello = '<p class="special">I'd like to say "Hi"</p>'; // valid String
注意: 使用 '
和 "
不会覆盖浏览器可以自动放置在属性引号上的双引号。例如 <p class=special>
被制作为 <p class="special">
,使用 "
可以导致 <p class=""special"">
,其中\"
将是 <p class="special">
。
Version >= 6
如果字符串包含'
和 "
,你可能需要考虑使用模板文字( 在以前的 ES6 版本中也称为模板字符串 ),这不需要你转义'
和 "
。这些使用反引号(`
)而不是单引号或双引号。
var x = `"Escaping " and ' can become very annoying`;