Skip to content

Instantly share code, notes, and snippets.

@kleberksms
Created August 30, 2022 18:27
Show Gist options
  • Save kleberksms/0d0495bc43c6c6265819cfce05c9c9e0 to your computer and use it in GitHub Desktop.
Save kleberksms/0d0495bc43c6c6265819cfce05c9c9e0 to your computer and use it in GitHub Desktop.
const generateRandomFloatInRange = (min, max) => {
return (Math.random() * (max - min + 1)) + min;
};
let obj = {
compras:[
{
produtos:[
{
valor_unitario:generateRandomFloatInRange(0,2)
},
{
valor_unitario:generateRandomFloatInRange(0,2)
},
{
valor_unitario:generateRandomFloatInRange(0,2)
},
{
valor_unitario:generateRandomFloatInRange(0,2)
},
{
valor_unitario:generateRandomFloatInRange(0,2)
},
{
valor_unitario:generateRandomFloatInRange(0,2)
},
]
},
{
produtos:[
{
valor_unitario:generateRandomFloatInRange(0,2)
},
{
valor_unitario:generateRandomFloatInRange(0,2)
},
{
valor_unitario:generateRandomFloatInRange(0,2)
},
{
valor_unitario:generateRandomFloatInRange(0,2)
},
{
valor_unitario:generateRandomFloatInRange(0,2)
},
{
valor_unitario:generateRandomFloatInRange(0,2)
},
]
}
]
};
let r = Object.keys(obj.compras).map((key,index)=>{
return obj.compras[key].produtos.reduce((prev,el) =>{
return prev + el.valor_unitario;
}, 0)
}).reduce((prev,el)=>{
return prev + el;
})
console.log(r);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment