Using map, reduce, and/or filter, how would I print the total number of items fo
ID: 3781989 • Letter: U
Question
Using map, reduce, and/or filter, how would I print the total number of items for each store to the console in JavaScript? I have to use either map, reduce, and/or filter. Here's my code:
<!DOCTYPE html>
<html>
<body>
<h1>My Program</h1>
<script>
const store = [{
name: "Kents",
foods: [
{name: 'bagels', quantity: 2},
{name: 'bread', quantity: 5},
{name: 'cereal', quantity: 3},
{name: 'milk', quantity: 2},
]
},{
name: "Maceys",
foods: [
{name: 'bagels', quantity: 1},
{name: 'bread', quantity: 3},
{name: 'cereal', quantity: 2},
{name: 'grapefruit', quantity: 1},
{name: 'milk', quantity: 3},
]
}];
console.log(totalItemsKents); //12
console.log(totalItemsMaceys); //10
</script>
</body>
</html>
Explanation / Answer
<!DOCTYPE html>
<html>
<body>
<h1>My Program</h1>
<script>
const store = [{
name: "Kents",
foods: [
{name: 'bagels', quantity: 2},
{name: 'bread', quantity: 5},
{name: 'cereal', quantity: 3},
{name: 'milk', quantity: 2},
]
},{
name: "Maceys",
foods: [
{name: 'bagels', quantity: 1},
{name: 'bread', quantity: 3},
{name: 'cereal', quantity: 2},
{name: 'grapefruit', quantity: 1},
{name: 'milk', quantity: 3},
]
}];
var totalItemsKents = store[0].foods.reduce(function(n, name) {
return n + name.quantity;
}, 0);
var totalItemsMaceys = store[1].foods.reduce(function(n, name) {
return n + name.quantity;
}, 0);
console.log(totalItemsKents); //12
console.log(totalItemsMaceys); //10
</script>
</body>
</html>
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.