【问题标题】:How to add multiple datalayer parameters with for loop?如何使用 for 循环添加多个数据层参数?
【发布时间】:2016-09-06 07:50:54
【问题描述】:
我有一个带有参数“价格”的数据层,我想添加它,例如799 + 95 + 95。
DigitalData[0].Cart.Items[0].Price
返回“799.00”
相信可以JavaScript For Loop 实现我正在寻找的价格减法。但我不熟悉如何输入这种情况。我是否朝着正确的方向前进?看看下面的代码?
for (i = 0; i < items.length; i++) {
DigitalData[0].Cart.Items[i].Price;
}
【问题讨论】:
标签:
javascript
for-loop
data-layer
【解决方案1】:
你需要一个变量来存储总和:
var sum = 0;
var items = DigitalData[0].Cart.Items;
for (i = 0; i < items.length; i++) {
sum += parseInt(items[i].Price);
}
【解决方案2】:
var totalPrice = 0;
for (i = 0; i < items.length; i++) {
var price = DigitalData[0].Cart.Items[i].Price;
price = parseFloat(price);
totalPrice += price;
}
【解决方案3】:
你可以使用Array#reduce:
var sum = DigitalData[0].Cart.Items.reduce(function (r, a) {
return r + +a.Price;
}, 0);
【解决方案4】:
你在正确的道路上,这是完整的解决方案:
var sum=0;
for (i = 0; i < items.length; i++) {
sum+=DigitalData[0].Cart.Items[i].Price;
}