I want sum all value in object of array, the problem is if array length more than 2, the output will be NaN. so this code.
data:
const data = [
{ "id": "5ad772d199ce7c1366e5ce7d", "price": 5},
{ "id": "5ad772d199ce7c1366e5ce7d", "price": 10}
]
solve code:
console.log(data.reduce((p,c) => p.price+c.price))
> 15
If i add more object to the data
const data = [
{ "id": "5ad772d199ce7c1366e5ce7d", "price": 5},
{ "id": "5ad772d199ce7c1366e5ce7d", "price": 5},
{ "id": "5ad772d199ce7c1366e5ce7d", "price": 10}
]
console.log(data.reduce((p,c) => p.price+c.price))
> NaN
so i try to flatten data:
console.log(data.map(o) => o.reduce((p,c) => p+c))
> 20
It possible, but is there any effective solutions? Thank you.