Return 一个 GTM JavaScript 变量(数组)在另一个 GTM JavaScript 变量中的总数
Return total of a GTM JavaScript variable (array) in another GTM JavaScript variable
这是我在这个网站上的第一个问题,我很好奇是否有人可以帮助我。在 Google 跟踪代码管理器中,我尝试设置一个自定义 JavaScript 变量,其中包含一些 jQuery 应该 return 特定数组中所有产品价格的总额。
在下面的代码中,我 return 增强型电子商务数据层中的所有产品价格。在 GTM 中,我将此变量称为“{{product price}}”。
function() {
var itemsInC = {{ecommerce.checkout.products}};
itemsincart = [];
for (var i = 0;i < itemsInC.length;i++) {
priceincart.push(itemsInC[i].price);
}
return priceincart;
}
上面的代码确实有效,例如 returns 的值如下:['9.99', '21.95', '34.99'].
在第二段代码中,我尝试对 GTM 变量“{{product price}}”中的所有 returned 值求和。但是,下面的代码无法正常工作。我怎样才能在下面的脚本中return上面脚本的总值?
这是我目前创建的:
function() {
var total = $("{{product price}}").each(function() {
0 += parseInt($(this).val(), 10);
}
return total;
}
提前致谢!
亲切的问候,
假设您使用的代码与上面的代码完全相同,那么您会遇到一些语法错误。
- 您不需要将 GTM 变量括在引号中
- 不要使用 parseInt 因为那只是 returns 一个整数。请改用 "Number"。
- 你遗漏了一个括号
所以你可能应该使用这样的东西:
function(){
var total = 0;
$({{product price}}).each(function(){
total += Number(this);
})
return total;
}
我不知道post回答我自己的问题是否正常但是我用下面的代码解决了上面的问题:
function() { var total = 0; for (var i = 0; i < {{product price}}.length; i++)
{ total += {{product price}}[i] << 0; } return total + ".00"; }
这是我在这个网站上的第一个问题,我很好奇是否有人可以帮助我。在 Google 跟踪代码管理器中,我尝试设置一个自定义 JavaScript 变量,其中包含一些 jQuery 应该 return 特定数组中所有产品价格的总额。
在下面的代码中,我 return 增强型电子商务数据层中的所有产品价格。在 GTM 中,我将此变量称为“{{product price}}”。
function() {
var itemsInC = {{ecommerce.checkout.products}};
itemsincart = [];
for (var i = 0;i < itemsInC.length;i++) {
priceincart.push(itemsInC[i].price);
}
return priceincart;
}
上面的代码确实有效,例如 returns 的值如下:['9.99', '21.95', '34.99'].
在第二段代码中,我尝试对 GTM 变量“{{product price}}”中的所有 returned 值求和。但是,下面的代码无法正常工作。我怎样才能在下面的脚本中return上面脚本的总值?
这是我目前创建的:
function() {
var total = $("{{product price}}").each(function() {
0 += parseInt($(this).val(), 10);
}
return total;
}
提前致谢!
亲切的问候,
假设您使用的代码与上面的代码完全相同,那么您会遇到一些语法错误。
- 您不需要将 GTM 变量括在引号中
- 不要使用 parseInt 因为那只是 returns 一个整数。请改用 "Number"。
- 你遗漏了一个括号
所以你可能应该使用这样的东西:
function(){
var total = 0;
$({{product price}}).each(function(){
total += Number(this);
})
return total;
}
我不知道post回答我自己的问题是否正常但是我用下面的代码解决了上面的问题:
function() { var total = 0; for (var i = 0; i < {{product price}}.length; i++)
{ total += {{product price}}[i] << 0; } return total + ".00"; }