我刚刚从我的JavaScript初学者阶段脱身。
为什么Google会选择对下面第1部分中的document.write
行进行unescape
处理?
他们为什么不直接这样写呢?也许在一些老版本的浏览器兼容性方面需要使用unescape
?
document.write('<script src="'
+ gaJsHost
+ 'google-analytics.com/ga.js" type="text/javascript"></script>');
作为参考,整个Google Analytics跟踪代码如下:
第一部分:
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol)
? "https://ssl."
: "http://www."
);
document.write(unescape("%3Cscript src='"
+ gaJsHost
+ "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"
));
</script>
第二部分:
<script type="text/javascript">
try
{
var pageTracker = _gat._getTracker("UA-0000000-0");
pageTracker._trackPageview();
}
catch(err){}
</script>
我理解代码的其余部分,只是对于unescape部分感到好奇。
编辑
底线是,unescape
是必需的。投票关闭此问题,因为它是一个重复的问题(请参阅标记为正确的答案)。