3

Crockford:“JavaScript:好的部分”

第 8 章:方法

正则表达式 regexp.exec(string)

在第 86 页的最后有一个很好的例子,但我还不明白其中的一件小事。

var text = '<html><body bgcolor=linen><p>' +
'This is <b>bold<\/b>!<\/p><\/body><\/html>';

为什么/(正斜杠)在这里转义?

我试过没有他们的例子,似乎工作得很好。

4

2 回答 2

8

/在 JavaScript 字符串中,和之间没有区别\/

<script>元素内部,序列</script>将结束该元素。要将其在字符串中表示为数据,您可以使用<\/script>.

以编程方式生成 JavaScript 字符串时,一种常见的做法是转义所有/字符,以防止在 HTML 中使用终止脚本。

这只是遵循该模式的代码。使用此特定代码没有实际好处。

于 2013-10-20T19:03:17.673 回答
-1

可能这应该在网页上显示为文本,而不是由浏览器解析。看看这个

两种不同的行为:

<html><body bgcolor=linen><p>This is <b>bold</b>!</p></body></html>
<html><body bgcolor=linen><p>This is <b>bold<\/b>!<\/p><\/body><\/html>
于 2013-10-20T18:57:41.240 回答