我正在使用Vue JS开发购物篮功能,我需要创建一个小计功能,将每个项目的价格和数量值相乘,并将它们相加以创建小计。
dataSet: [
{
"instock" : '',
"price": 49,
"qty": 1,
"subTotal": ''
},
{
"instock" : '',
"price": 29,
"qty": 1,
"subTotal" : '',
},
]
我已设法返回每个'价格'和'数量'在对象数组上使用forEach,如下所示:
getSubTotal(dataSet) {
this.dataSet.forEach(function(data) {
console.log(data.price)
})
console
49
29
到目前为止一切都那么好(我想),我得到了返回给我的价格值,唯一的问题是它们不会在同一个阵列中返回,而是单独返回。我真的需要将它们作为[49,29]返回,所以我可以将这些值一起添加到小计中。我能够通过索引对每个数组进行硬编码,然后单独添加它们,但这不会证明对象数组中新服装项的可能性。
非常感谢任何建议/批评或帮助。
答案 0 :(得分:0)
getSubTotal(dataSet) {
return this.dataSet.map(function(data) {
return data.price;
})

答案 1 :(得分:0)
好的,所以我能够弄清楚这一点。
dataSet: [
{
"price": 49,
"qty": 1,
},
{
"price": 29,
"qty": 1,
},
]
subTotals(data) {
const calcArray = [data.price, data.qty];
return calcArray.reduce((a,b)=> {
//multiply price by quantity for subtotal
return a*b;
});
}