diff --git a/Sprint-1/destructuring/exercise-1/exercise.js b/Sprint-1/destructuring/exercise-1/exercise.js index 1ff2ac5c..d86bc7bf 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 e11b75eb..b203f209 100644 --- a/Sprint-1/destructuring/exercise-2/exercise.js +++ b/Sprint-1/destructuring/exercise-2/exercise.js @@ -70,3 +70,29 @@ let hogwarts = [ occupation: "Teacher", }, ]; + +function getGryffindorHousePeople(list) { + let result = []; + list.forEach((person) => { + const { firstName, lastName, house } = person; + if (house === "Gryffindor") + result.push(` + ${firstName} ${lastName}`); + }); + return result; +} + +function findTeachersHavingPets(list) { + let result = []; + list.forEach((person) => { + const { firstName, lastName, pet, occupation } = person; + if (pet !== null && occupation === "Teacher") + result.push(` + ${firstName} ${lastName}`); + }); + return result; +} + +console.log(...getGryffindorHousePeople(hogwarts)); + +console.log(...findTeachersHavingPets(hogwarts)); diff --git a/Sprint-1/destructuring/exercise-3/exercise.js b/Sprint-1/destructuring/exercise-3/exercise.js index b3a36f4e..f0dcddcd 100644 --- a/Sprint-1/destructuring/exercise-3/exercise.js +++ b/Sprint-1/destructuring/exercise-3/exercise.js @@ -6,3 +6,23 @@ let order = [ { itemName: "Hot Coffee", quantity: 2, unitPricePence: 100 }, { itemName: "Hash Brown", quantity: 4, unitPricePence: 40 }, ]; + +function printReceipt(order) { + let receipt = []; + let total = 0; + receipt.push(` + QTY ITEM TOTAL`); + order.forEach((item) => { + const { itemName, quantity, unitPricePence } = item; + const itemTotal = (quantity * unitPricePence) / 100; + total += itemTotal; + receipt.push(` + ${quantity} ${itemName.padEnd(20)} ${itemTotal.toFixed(2)}`); + }); + receipt.push(` + + Total: ${total.toFixed(2)}`); + console.log(...receipt); +} + +printReceipt(order);