Tengo los resultados de mi consulta MongoDB db para dos variables de la siguiente manera:
foodelectricity [ { food: 'dairy', electricity: 1 }, { food: 'fruitAndVeg', electricity: 1 }, { food: 'grains', electricity: 1 }, { food: 'bakedGoods', electricity: 5 }, { food: 'protein', electricity: 1 } ] foodresults { bakedGoods: 1, dairy: 3, fruitAndVeg: 1, grains: 2, protein: 1 }Necesito multiplicar los valores numéricos en los resultados de los alimentos por la electricidad asociada con ese mismo tipo de elemento en la electricidad de los alimentos.
Por ejemplo :
let helpValue = foodresults.bakedGoods = 1 * foodElectricity.food.bakedGoods = 5.No creo que MongoDB devuelva la matriz en el mismo orden cada vez, por lo que se requiere algún tipo de coincidencia de valor clave.
Tengo problemas para averiguar cómo encontrar el valor de ayuda.
Cualquier ayuda es profundamente apreciada.
Con gracias karen
Puede hacer una copia de los resultados de foodresults y luego foodelectricity la matriz de electricidad de los alimentos y multiplicar electricity con el valor coincidente del objeto de resultados.
const foodelectricity = [{"food":"dairy","electricity":1},{"food":"fruitAndVeg","electricity":1},{"food":"grains","electricity":1},{"food":"bakedGoods","electricity":5},{"food":"protein","electricity":1}] const foodresults = { bakedGoods: 1, dairy: 3, fruitAndVeg: 1, grains: 2, protein: 1 } const helpValues = { ...foodresults } foodelectricity.forEach(({ food, electricity }) => { helpValues[food] *= electricity }) console.log(helpValues)