From 3f999445663ca6b2b85ef096009b0d2821588647 Mon Sep 17 00:00:00 2001 From: KhotKeys Date: Wed, 12 Aug 2026 13:17:45 +0100 Subject: [PATCH] Complete destructuring exercises 1, 2 and 3 --- Sprint-1/destructuring/exercise-1/exercise.js | 2 +- Sprint-1/destructuring/exercise-2/exercise.js | 14 ++++++++++++++ Sprint-1/destructuring/exercise-3/exercise.js | 11 ++++++++++- 3 files changed, 25 insertions(+), 2 deletions(-) diff --git a/Sprint-1/destructuring/exercise-1/exercise.js b/Sprint-1/destructuring/exercise-1/exercise.js index 1ff2ac5cf..d86bc7bf8 100644 --- a/Sprint-1/destructuring/exercise-1/exercise.js +++ b/Sprint-1/destructuring/exercise-1/exercise.js @@ -6,7 +6,7 @@ const personOne = { // Update the parameter to this function to make it work. // Don't change anything else. -function introduceYourself(___________________________) { +function introduceYourself({ name, age, favouriteFood }) { console.log( `Hello, my name is ${name}. I am ${age} years old and my favourite food is ${favouriteFood}.` ); diff --git a/Sprint-1/destructuring/exercise-2/exercise.js b/Sprint-1/destructuring/exercise-2/exercise.js index e11b75eb9..359fbbc21 100644 --- a/Sprint-1/destructuring/exercise-2/exercise.js +++ b/Sprint-1/destructuring/exercise-2/exercise.js @@ -70,3 +70,17 @@ let hogwarts = [ occupation: "Teacher", }, ]; + +// Task 1: Gryffindor members +hogwarts.forEach(function ({ firstName, lastName, house }) { + if (house === "Gryffindor") { + console.log(`${firstName} ${lastName}`); + } +}); + +// Task 2: Teachers with pets +hogwarts.forEach(function ({ firstName, lastName, occupation, pet }) { + if (occupation === "Teacher" && pet) { + console.log(`${firstName} ${lastName}`); + } +}); diff --git a/Sprint-1/destructuring/exercise-3/exercise.js b/Sprint-1/destructuring/exercise-3/exercise.js index b3a36f4e4..b6d376e27 100644 --- a/Sprint-1/destructuring/exercise-3/exercise.js +++ b/Sprint-1/destructuring/exercise-3/exercise.js @@ -1,8 +1,17 @@ let order = [ - { itemName: "Hot cakes", quantity: 1, unitPricePence: 232 }, + { itemName: "Hot Cakes", quantity: 1, unitPricePence: 232 }, { itemName: "Apple Pie", quantity: 2, unitPricePence: 139 }, { itemName: "Egg McMuffin", quantity: 1, unitPricePence: 280 }, { itemName: "Sausage McMuffin", quantity: 1, unitPricePence: 300 }, { itemName: "Hot Coffee", quantity: 2, unitPricePence: 100 }, { itemName: "Hash Brown", quantity: 4, unitPricePence: 40 }, ]; + +console.log("QTY ITEM TOTAL"); +let total = 0; +order.forEach(function ({ itemName, quantity, unitPricePence }) { + const lineTotal = (quantity * unitPricePence) / 100; + total += lineTotal; + console.log(`${quantity} ${itemName.padEnd(20)}${lineTotal.toFixed(2)}`); +}); +console.log(`\nTotal: ${total.toFixed(2)}`);