如何汇总javascript对象的值?
我在一个数组中有以下值,我试图得到它的和。这就是chrome开发者工具的外观如何汇总javascript对象的值?,javascript,arrays,Javascript,Arrays,我在一个数组中有以下值,我试图得到它的和。这就是chrome开发者工具的外观 (3) [{…}, {…}, {…}]0: {ID: 1, ProductName: " New phone 1", Price: "€ 600"}1: {ID: 3, ProductName: " New phone 2", Price: "€ 1000"}2: {ID: 4, ProductName: " New phone
(3) [{…}, {…}, {…}]0: {ID: 1, ProductName: " New phone 1", Price: "€ 600"}1: {ID: 3, ProductName: " New phone 2", Price: "€ 1000"}2: {ID: 4, ProductName: " New phone 3", Price: "€ 400"}length: 3__proto__: Array(0)
我想得到每种商品的价格,并计算出所有价值的总和。我从Api中获取这些值,有时可能是更多项或更少项。目前,这就是我获取值的方式
function setTotalPrice() {
fetch("http://localhost:1234/api/Product")
.then(response=>response.json())
.then(data => {
data.forEach(element => {
console.log(element.Price)
});
})
}
您需要从
Price
字符串()中获取数字,并使用
const数据=[
{ID:1,产品名称:'新手机1',价格:''600欧元'},
{ID:3,产品名称:'New phone 2',价格:'1000欧元'},
{ID:4,产品名称:'New phone 3',价格:'400欧元'},
];
const result=data.reduce((acc,val)=>acc+parseInt(val.Price.split(“”)[1],10),0);
控制台日志(结果);
控制台日志(“€”+结果)
您需要从价格
字符串()中获取数字,并使用
const数据=[
{ID:1,产品名称:'新手机1',价格:''600欧元'},
{ID:3,产品名称:'New phone 2',价格:'1000欧元'},
{ID:4,产品名称:'New phone 3',价格:'400欧元'},
];
const result=data.reduce((acc,val)=>acc+parseInt(val.Price.split(“”)[1],10),0);
控制台日志(结果);
控制台日志(“€”+结果)
您可以使用reduce
和一点regex/\d+/
let数据=[
{id:1,产品:'phone 1',价格:'400欧元'},
{id:3,产品:'phone 2',价格:'3000欧元'},
{id:4,产品:'phone 3',价格:'600欧元'},
];
设sum=data.reduce((a,{price})=>a+Number(price.match(/\d+/)),0);
控制台日志(总和)
您可以使用reduce
和一点regex/\d+/
let数据=[
{id:1,产品:'phone 1',价格:'400欧元'},
{id:3,产品:'phone 2',价格:'3000欧元'},
{id:4,产品:'phone 3',价格:'600欧元'},
];
设sum=data.reduce((a,{price})=>a+Number(price.match(/\d+/)),0);
控制台日志(总和)代码>为什么不parseFloat?为什么不parseFloat?
const sum = data
.map(({ price }) => {
const digitsStartIndex = price.substring(price.findIndex(' ') + 1);
return parseFloat(digitsStartIndex, 10)
})
.reduce((a, b) => a + b, 0)
console.log(`€ ${sum}`)