为什么Google会在其document.write()调用?</script>中拆分<script>标记

时间:2012-10-30 12:12:59

标签: javascript

  

可能重复:
  Why split the <script> tag when writing it with document.write()?

Google DFP移动设备初始化代码包含以下内容:

document.write('<scr' + 'ipt src="' + src + '"></scr' + 'ipt>');

这比做什么更好:

document.write('<script src="' + src + '"></script>');

1 个答案:

答案 0 :(得分:1)

在某些处理或处理Javascript的情况下 - 例如,当代码嵌入到HTML页面中时 - 字符序列</script<script将单独处理,之前< / em>解析Javascript以识别字符串常量等。

因此,确保Javascript代码写入 never 包含这些字符序列更加健壮。这可以说是一个很好的防御习惯,即使对于那些当前正被<{1}}打破的系统处理的代码,这样做也是一个很好的防御习惯 - 因为如果代码是之后复制粘贴到</script>确实产生问题的上下文中。