diff --git a/Sprint-1/destructuring/exercise-1/exercise.js b/Sprint-1/destructuring/exercise-1/exercise.js index 1ff2ac5c..7b5dbf52 100644 --- a/Sprint-1/destructuring/exercise-1/exercise.js +++ b/Sprint-1/destructuring/exercise-1/exercise.js @@ -2,11 +2,11 @@ const personOne = { name: "Popeye", age: 34, favouriteFood: "Spinach", -}; +} // 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..80f27dcf 100644 --- a/Sprint-1/destructuring/exercise-2/exercise.js +++ b/Sprint-1/destructuring/exercise-2/exercise.js @@ -70,3 +70,15 @@ let hogwarts = [ occupation: "Teacher", }, ]; + +hogwarts.map(({ firstName, lastName, house }) => { + if (house === "Gryffindor") { + console.log(`${firstName} ${lastName}`); + } +}); + +hogwarts.map(({ occupation, pet, firstName, lastName }) => { + if (occupation === "Teacher" && pet !== null) { + console.log(`${firstName} ${lastName}`); + } +}); diff --git a/Sprint-1/destructuring/exercise-3/exercise.js b/Sprint-1/destructuring/exercise-3/exercise.js index b3a36f4e..0edcb1b7 100644 --- a/Sprint-1/destructuring/exercise-3/exercise.js +++ b/Sprint-1/destructuring/exercise-3/exercise.js @@ -6,3 +6,29 @@ let order = [ { itemName: "Hot Coffee", quantity: 2, unitPricePence: 100 }, { itemName: "Hash Brown", quantity: 4, unitPricePence: 40 }, ]; + +order.forEach(({ itemName, quantity, unitPricePence }) => { + let totalPence = quantity * unitPricePence; + let pence = totalPence % 100; + let paddedPence = String(pence).padStart(2, "0"); + let pounds = Math.floor(totalPence / 100); + let priceEachItem = `${pounds}.${paddedPence}`; + + console.log( + `${String(quantity).padEnd(7, " ")}${itemName.padEnd( + 20, + " " + )}${priceEachItem}` + ); +}); +let sumAllPence = 0; +order.forEach(({ quantity, unitPricePence }) => { + sumAllPence += quantity * unitPricePence; +}); +let totalBillPence = sumAllPence % 100; +let paddedTotalBillPence = String(totalBillPence).padStart(2, "0"); +let totalBillPounds = Math.floor(sumAllPence / 100); +let totalBill = ` +Total: ${totalBillPounds}.${totalBillPence}`; + +console.log(totalBill);