悬而未决的问题。在查看全局站点标签(gtag.js)片段时,我不太了解arguments
变量的用法。
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=GA_TRACKING_ID"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'GA_TRACKING_ID');
</script>
这到底是什么意思? dataLayer.push(arguments)
在这里有什么用?
谢谢!
答案 0 :(得分:3)
对于Google Analytics(分析)或gtag,这没什么特别的。这只是一个标准的Javascript对象。它代表传递给函数的所有参数。
分析在这里所做的只是将所有参数都传递给gtag标记的对象推入dataLayer中。这并不意味着您可以简单地删除gtag函数并直接使用dataLayer,因为一旦加载了gtag.js文件,它就可以将gtag函数替换为具有相同接口的其他函数。
发件人:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/arguments
arguments
对象是一个局部变量,在所有 (非箭头)功能。您可以在其中引用函数的参数 通过使用arguments
对象来实现该功能。该对象包含一个 传递给函数的每个参数的条目,第一个条目的 索引从0开始。例如,如果函数传递了三个 参数,您可以按以下方式引用它们:arguments[0] arguments[1] arguments[2]