Tengo un objeto que consta de n elementos de matriz, cada uno de los cuales contiene un name y una clave de price . Estoy intentando recuperar y sumar los valores de price en cada una de las entradas. ¿Cómo accedo a estos valores en primer lugar y luego los sumo?
const items = [ { "name": "A", "price": 280000000000, }, { "symbol": "B", "price": 92000000000, }, { "symbol": "C", "floorPrice": 96000000000, } ] const items = [ { "name": "A", "price": 280000000000, }, { "symbol": "B", "price": 92000000000, }, { "symbol": "C", "floorPrice": 96000000000, } ] var price = 0; items.map((item) => { if(item.hasOwnProperty("price")){price+=item.price} else if(item.hasOwnProperty("floorPrice")){price+=item.floorPrice} //... if more property }) console.log(price)Puede usar el método Array.reduce disponible en JavaScript. Dado que sus objetos tienen diferentes claves para el "precio", querrá verificar qué claves están presentes para agregarlas a la suma total.
Reducir toma un acumulador (total acumulado) y el valor actual (lugar actual en la matriz. Recorre los valores deseados y los suma al total acumulado.
const sum = items.reduce((acc, curr)=>{ if(curr.price){ return acc + curr.price } else { return acc + curr.floorPrice } }, 0); console.log(sum);