Javascript 谷歌分析代码,它是如何工作的?

Javascript 谷歌分析代码,它是如何工作的?,javascript,google-analytics,Javascript,Google Analytics,从这里开始: 函数recordOutboundLink(链接、类别、操作){ 试一试{ var myTracker=_gat._getTrackerByName(); _gaq.push(['myTracker._trackEvent','+category+','+action+'); setTimeout('document.location=“”+link.href+'”,100) }捕获(错误){} } 如果您注意到+category+和+action+在引号中。那么分析脚本是如何

从这里开始:


函数recordOutboundLink(链接、类别、操作){
试一试{
var myTracker=_gat._getTrackerByName();
_gaq.push(['myTracker._trackEvent','+category+','+action+');
setTimeout('document.location=“”+link.href+'”,100)
}捕获(错误){}
}

如果您注意到+category+和+action+在引号中。那么分析脚本是如何获取其值的呢?

这是他们文档中的一个错误;他们的代码将无法按预期工作

该行应改为:

_gaq.push(['myTracker._trackEvent',  category ,  action ]);

你说得对。按照它们的方式,它将类别和操作作为文本字符串传递,而不是传递包含字符串的变量

传入的字符串很可能会获取eval'd。是否可以在另一个函数的上下文中对其求值?下面是一个示例,在您的示例中,类别和操作与eval位于同一个函数上。虽然分析代码,如果有评估,它超出了定义类别和操作的范围你是对的。。。这将超出范围。这没有道理。我问的原因是分析事件跟踪不起作用。我会看看这个代码是否有效。谢谢
_gaq.push(['myTracker._trackEvent',  category ,  action ]);