如何访问dataLayer变量

How to access dataLayer variables

本文关键字:dataLayer 变量 访问 何访问      更新时间:2024-02-03

在我们的网站上,我们有一个数据层来定义要传递给Google Analytics的一些变量。它是这样定义的:

deviceCategory: "DESKTOP"
deviceMode: "DESKTOP"
domainName: ".mydomain.com"
environment: "production"
operatingSystem: "UNKNOWN"
page.category.pageType: "Content"
page.category.primaryCategory: "main"
page.pageInfo.language: "en"
page.pageInfo.pageID: "productSelection"
user.profile.address.city: "Los Angeles"
user.profile.address.country: "US"

当我在控制台中键入以下内容时,它的输出完全符合预期:dataLayer[0].设备模式-->"DESKTOP"

但是,当我尝试访问任何页面/用户变量时,我会出现错误:dataLayer[0]page.category.pageType-->未捕获类型错误:无法读取未定义的属性"category"

知道为什么会发生这种事吗?访问这些值的正确方式是什么?

您使用的键只是带点的字符串。它们不是对象的一部分,所以你需要这样访问:

dataLayer[0]['page.pageInfo.language']

使用方括号。

编辑:请注意,这不是你在GTM中会做的事情(但也许不需要更多评论,因为你没有问这个问题)。