如何解决我如何在 Array 中执行“for 循环”然后添加到 DataLayer.push
我已从网页中检索 ID 数据作为自定义 Javascript 变量:
function() {
var productID = document.querySelectorAll('a[data-productID]');
var allproductID = array.prototype.map.call(productID,function(a) {
return a.getAttribute('data-productID');
});
return allproductID;
}
但现在我需要通过标签管理器将这些 ID 发送给谷歌,
我正在寻找的是如何在这些返回数组中循环并将值从 Array 放入 'id' 并将其推送到 Google,最终结果必须如下:
<script>
gtag('event','view_item',{
value: 'somevalue'
'items': [
{
'id': 1234,'google_business_vertical': 'retail'
},{
'id': 45678,'google_business_vertical': 'retail'
}
]
});
</script>
谢谢
解决方法
您可以通过 return 语句在数组中创建对象,然后您可以将推送添加到 secend 中
function() {
var productID = document.querySelectorAll('a[data-productID]');
var allproductID = Array.prototype.map.call(productID,function(a) {
return {
'id': a.getAttribute('data-productID'),'google_business_vertical': 'retail'
}
});
return dataLayer.push({
'event': 'view_items','value': 'somevalue','items' : allproductID
});
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。