为什么我必须用四个反斜杠而不是两个来编写代码?
why I must write the code with four backslashes instead of two?
我想这样写代码document.querySelector('#foo\bar');它不起作用
<div id="foo\bar"></div>
<div id="foo:bar"></div>
<script>
document.querySelector('#foo\\bar'); // Match the first div
document.querySelector('#foo\:bar'); // Match the second div
</script>
JavaScript 字符串语法使用反斜杠作为特殊字符的转义机制。为了使字符串以 单 反斜杠结尾,您必须将其加倍。
然后,CSS querySelector()
also 的选择器语法使用反斜杠字符作为特殊的转义序列开始,所以它在所有地方都是一样的再次.
因此解析字符串将反斜杠减少为两个,然后解释选择器导致 querySelector()
只查找一个反斜杠。
我想这样写代码document.querySelector('#foo\bar');它不起作用
<div id="foo\bar"></div>
<div id="foo:bar"></div>
<script>
document.querySelector('#foo\\bar'); // Match the first div
document.querySelector('#foo\:bar'); // Match the second div
</script>
JavaScript 字符串语法使用反斜杠作为特殊字符的转义机制。为了使字符串以 单 反斜杠结尾,您必须将其加倍。
然后,CSS querySelector()
also 的选择器语法使用反斜杠字符作为特殊的转义序列开始,所以它在所有地方都是一样的再次.
因此解析字符串将反斜杠减少为两个,然后解释选择器导致 querySelector()
只查找一个反斜杠。