如何从dataLayer对象获取值

时间:2017-08-18 11:04:34

标签: javascript jquery google-tag-manager google-datalayer

我想从google tag manager的dataLayer对象中获取一些值。 在Chrome标签帮助中我得到这样的值

[
  {
    "gtm.start": 1503053374849,
    "event": "gtm.js",
    "gtm.uniqueEventId": 0
  },
  {
    "event": "gtm.dom",
    "gtm.uniqueEventId": 1
  },
  {
    "event": "gtm.load",
    "gtm.uniqueEventId": 2
  },
  {
    "Linker": "_ga=53655374"
  }
]

我需要获得" Linker"值。我试过dataLayer[3].Linker,但它给了我" undefined"或空白也是dataLayer[1].event相同(它的空白不返回值=" gtm.dom") 当我尝试dataLayer[0].event时,它会返回正确的'gtm.js'

请帮助我如何获得" Linker"值

3 个答案:

答案 0 :(得分:1)

在表console.table(dataLayer);中打印数据层并记下它将为index显示的Linker值。

enter image description here

然后,您可以dataLayer[XXX]使用XXX作为index的{​​{1}}值。

答案 1 :(得分:1)

您可以通过Google跟踪代码管理器javascript-api访问推送的数据。可变部分将是您的GTM容器的容器ID。确保您正确的地址。

google_tag_manager['<container-id>'].dataLayer.get('gtm.start');
//result e.g.: 1210115541132

结果将是数据层状态的最后一个值

答案 2 :(得分:0)

最好的方法是使用Google跟踪代码管理器,这就是它的设计目标。为此,请转到GTM界面(tagmanager.google.com)并创建一个类型为dataLayer的variable。然后,您可以在您选择的标记中使用此变量,将其值传递给第三方系统。