公开问题。在查看全局站点标签(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)在这里有什么用?

谢谢!

最佳答案

对于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]

关于google-analytics - gtag代码段中的arguments变量是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51504813/

10-12 02:33