diff --git a/Week-1/Homework/mandatory/1-writers.js b/Week-1/Homework/mandatory/1-writers.js index 82acf6f..13cd020 100644 --- a/Week-1/Homework/mandatory/1-writers.js +++ b/Week-1/Homework/mandatory/1-writers.js @@ -38,7 +38,11 @@ let writers = [ alive: true } ]; - +for(let key in writers){ + if(writers[key].alive === true ){ + console.log(`Hi, my name is ${writers[key].firstName} ${writers[key].lastName}. I am ${writers[key].age} years old, and work as a ${writers[key].occupation}`); + } +} /* If you want an extra challenge, only `console.log()` the writers that are alive. */ diff --git a/Week-1/Homework/mandatory/2-water-bottle.js b/Week-1/Homework/mandatory/2-water-bottle.js index 981d7e3..87c2f8b 100644 --- a/Week-1/Homework/mandatory/2-water-bottle.js +++ b/Week-1/Homework/mandatory/2-water-bottle.js @@ -11,14 +11,23 @@ We made a start on this for you here: let bottle = { volume: 0, fill: function() { - // calling this function should make you bottles volume = 100; + calling this function should make you bottles volume = 100; + this.volume = 100; + return this.volume; + }, drink: function() { - // calling this function should decrease your bottles volume by 10; + calling this function should decrease your bottles volume by 10; + this.volume -= 10; + return this.volume; }, empty: function() { // this function should return true if your bottles volume = 0 + if(this.volume === 0){ + return true; + } } + }; /* diff --git a/Week-1/Homework/mandatory/3-groceries.js b/Week-1/Homework/mandatory/3-groceries.js index 2b34cdb..6a48ac4 100644 --- a/Week-1/Homework/mandatory/3-groceries.js +++ b/Week-1/Homework/mandatory/3-groceries.js @@ -6,7 +6,11 @@ let groceriesToBuy = []; let groceryList = { - item1: "", - item2: "", - item3: "" + item1: "Potatoes", + item2: "Orange Juice", + item3: "Rice" }; +for(let key in groceryList){ + groceriesToBuy.push(groceryList[key]); +} +console.log(groceriesToBuy); diff --git a/Week-1/Homework/projects/1-recipes.js b/Week-1/Homework/projects/1-recipes.js index 3ada67c..cbacdaa 100644 --- a/Week-1/Homework/projects/1-recipes.js +++ b/Week-1/Homework/projects/1-recipes.js @@ -22,4 +22,15 @@ cocoa **/ -let recipes = {}; +let recipes = { + title: 'Mole', + servings: 2, + ingredients: ['cinnamon', 'cumin', 'cocoa'], +}; +console.log(recipes.title); +console.log(`Serves: ${recipes.servings}`); +console.log(`Ingredients:`); +console.log(recipes.ingredients[0]); +console.log(recipes.ingredients[1]); +console.log(recipes.ingredients[2]); + diff --git a/Week-1/Homework/projects/2-reading-list.js b/Week-1/Homework/projects/2-reading-list.js index 939e3e2..94fc89b 100644 --- a/Week-1/Homework/projects/2-reading-list.js +++ b/Week-1/Homework/projects/2-reading-list.js @@ -25,4 +25,55 @@ If you read it, log a string like 'You already read "The Hobbit" by J.R.R. Tolki **/ -let books = []; +let books = [ + { + title: 'To Kill a Mockingbird', + author: 'Harper Lee', + alreadyRead: true, + }, + { + title: 'The Great Gatsby', + author: 'F. Scott Fitzgerald', + alreadyRead: false, + }, + { + title: 'One Hundred Years of Solitude', + author: 'Gabriel García Márquez', + alreadyRead: true, + }, + { + title: 'The Lord of the Rings', + author: 'J.R.R', + alreadyRead: true, + }, + { + title: 'Invisible Man', + author: 'Ralph Ellison', + alreadyRead: false, + }, + { + title: 'Don Quixote', + author: 'Miguel de Cervantes', + alreadyRead: false, + }, + { + title: 'Beloved', + author: 'Toni Morrison', + alreadyRead: true, + }, + { + title: 'The Hobbit', + author: 'J.R.R', + alreadyRead: false, + }, +]; +// for(let value in books){ +// console.log(`${books[value].title} by ${books[value].author}.`); +// } +for(let key in books){ + if(books[key].alreadyRead === true){ + console.log(`You already read ${books[key].title} by ${books[key].author}.`) + }else{ + console.log(`You still need to read ${books[key].title} by ${books[key].author}.`) + } +} diff --git a/Week-1/InClass/A-objects-intro/exercise-part-0.js b/Week-1/InClass/A-objects-intro/exercise-part-0.js index 433d27c..a43761d 100644 --- a/Week-1/InClass/A-objects-intro/exercise-part-0.js +++ b/Week-1/InClass/A-objects-intro/exercise-part-0.js @@ -4,4 +4,21 @@ Describe your own laptop as a JavaScript object Try to think of as many properties as you can! -*/ \ No newline at end of file +*/ +let laptop = { + brand: 'Lenovo', + screenSize: 14, + memory: '4-GB', + processor: 'Intel Core i5', + disk: 320, + operatingSystem: 'Linux-Ubuntu', + touchScreen: false, +}; +console.log(laptop); +console.log(laptop.brand); +console.log(laptop.screenSize); +console.log(laptop.memory); +console.log(laptop.processor); +console.log(laptop.disk); +console.log(laptop.operatingSystem); +console.log(laptop.touchScreen); diff --git a/Week-1/InClass/A-objects-intro/exercise-part-1.js b/Week-1/InClass/A-objects-intro/exercise-part-1.js index 49e1ed9..5a3daa2 100644 --- a/Week-1/InClass/A-objects-intro/exercise-part-1.js +++ b/Week-1/InClass/A-objects-intro/exercise-part-1.js @@ -6,4 +6,21 @@ can describe with a JavaScript object Assign each of them to a separate variable */ +let car = { + make: 'Volkswagon', + model: 'Golf', + year: 2006, + engineSize: '1.9 cc', + color: 'Green', + fuelType: 'Diesel', + automaticGearbox: false, +}; +console.log(car); +console.log(car.make); +console.log(car.model); +console.log(car.year); +console.log(car.engineSize); +console.log(car.color); +console.log(car.fuelType); +console.log(car.automaticGearbox); diff --git a/Week-1/InClass/A-objects-intro/exercise-part-2.js b/Week-1/InClass/A-objects-intro/exercise-part-2.js index 4e01403..5378725 100644 --- a/Week-1/InClass/A-objects-intro/exercise-part-2.js +++ b/Week-1/InClass/A-objects-intro/exercise-part-2.js @@ -5,17 +5,18 @@ The objects below have some syntax issues - try and fix them all! */ let kitten = { - fur colour: "orange", - age "23" + furcolour: "orange", + age: "23" }; -let laptop = - brand: "Lenovo" - ram "5GB" -} +let laptop = { + brand: "Lenovo", + ram: "5GB", +}; let phone = { - operating system "iOS", + 'operating system': "iOS", hasStylus: true, - megapixels 12 - "batteryLife": "24 hours" \ No newline at end of file + megapixels: 12, + batteryLife: "24 hours", +}; \ No newline at end of file diff --git a/Week-1/InClass/B-objects-get-set/exercise-1.js b/Week-1/InClass/B-objects-get-set/exercise-1.js index 6591384..b716f91 100644 --- a/Week-1/InClass/B-objects-get-set/exercise-1.js +++ b/Week-1/InClass/B-objects-get-set/exercise-1.js @@ -10,7 +10,9 @@ let kitten = { // YOUR CODE GOES BELOW HERE - +console.log(kitten.ageMonths); +console.log(kitten.isFemale); +console.log(kitten.furColour); diff --git a/Week-1/InClass/B-objects-get-set/exercise-2.js b/Week-1/InClass/B-objects-get-set/exercise-2.js index c8b5e7b..961aa33 100644 --- a/Week-1/InClass/B-objects-get-set/exercise-2.js +++ b/Week-1/InClass/B-objects-get-set/exercise-2.js @@ -5,14 +5,14 @@ */ let phone = { - brand: 'iPhone, - model 'iPhone X' + brand: 'iPhone', + model: 'iPhone X', launchYear: 2017, - is Unlocked: true -; + isUnlocked: true +}; -let phoneBrand = phone.bbrand; -let phoneLaunchYear = phone[launchYear]; +let phoneBrand = phone.brand; +let phoneLaunchYear = phone.launchYear; // DO NOT MODIFY BELOW THIS LINE diff --git a/Week-1/InClass/B-objects-get-set/exercise-3.js b/Week-1/InClass/B-objects-get-set/exercise-3.js index f775c9a..0050599 100644 --- a/Week-1/InClass/B-objects-get-set/exercise-3.js +++ b/Week-1/InClass/B-objects-get-set/exercise-3.js @@ -3,7 +3,9 @@ */ // WRITE CODE BELOW THIS - +let kitten = { + name: 'Gilbert' +}; // WRITE CODE ABOVE THIS console.log(kitten.name); diff --git a/Week-1/InClass/B-objects-get-set/exercise-4.js b/Week-1/InClass/B-objects-get-set/exercise-4.js index 763347e..4ea8c8d 100644 --- a/Week-1/InClass/B-objects-get-set/exercise-4.js +++ b/Week-1/InClass/B-objects-get-set/exercise-4.js @@ -8,9 +8,9 @@ let dog = { }; // WRITE CODE BELOW THIS LINE +dog.name = 'Rex'; - - +dog.wantsToPlay = true; // WRITE CODE ABOVE THIS LINE diff --git a/Week-1/InClass/C-more-complex-objects/exercise-1.js b/Week-1/InClass/C-more-complex-objects/exercise-1.js index 8ae3e82..dffcca5 100644 --- a/Week-1/InClass/C-more-complex-objects/exercise-1.js +++ b/Week-1/InClass/C-more-complex-objects/exercise-1.js @@ -20,9 +20,11 @@ let house = { */ // - change the address of "house" to '51 Berkley Road' +house.address = '51 Berkley Road'; // - change the previous owners of "house" to ["Brian M.", "Fiona S."] +house.previousOwners = ["Brian M.", "Fiona S."]; // - change the last name of the current owner of "house" to "Montgomery" - +house.currentOwner.lastName ='Montgomery'; /* DO NOT EDIT ANYTHING BELOW THIS LINE diff --git a/Week-1/InClass/C-more-complex-objects/exercise-2.js b/Week-1/InClass/C-more-complex-objects/exercise-2.js index 7ea0200..5fd1990 100644 --- a/Week-1/InClass/C-more-complex-objects/exercise-2.js +++ b/Week-1/InClass/C-more-complex-objects/exercise-2.js @@ -26,8 +26,11 @@ let newCurrentOwner = { */ // - assign the value of the variable 'newCurrentOwner' as the value to the house's "currentOwner" +house.currentOwner = newCurrentOwner; // - from the list of previous owners, replace only "John A." with "Stephen B." +house.previousOwners[1] = 'Stephen B'; // - give the house a new property called 'isForSale' with the value 'false' +house.isForSale = false; diff --git a/Week-1/InClass/C-more-complex-objects/exercise-3.js b/Week-1/InClass/C-more-complex-objects/exercise-3.js index 4bfbfd3..a9cafee 100644 --- a/Week-1/InClass/C-more-complex-objects/exercise-3.js +++ b/Week-1/InClass/C-more-complex-objects/exercise-3.js @@ -32,17 +32,21 @@ let parkAvenueHouse = { // returns the full name (first name + last name) of the owner of the house function getOwnerFullName(house) { - + return `${house.currentOwner.firstName} ${house.currentOwner.lastName}`; } // returns an array of the owners' email addresses of the two houses function getEmailAddresses(house1, house2) { - + return `${house1.currentOwner.email} ${house2.currentOwner.email}`; } // returns the address for the cheapest house out of the two function getCheapestAddress(house1, house2) { - + if(house1.price < house2.price){ + return house1.address; + }else{ + return house2.address; + } } diff --git a/Week-1/InClass/D-methods/exercise-1.js b/Week-1/InClass/D-methods/exercise-1.js index 8de0f8c..f3f3c71 100644 --- a/Week-1/InClass/D-methods/exercise-1.js +++ b/Week-1/InClass/D-methods/exercise-1.js @@ -3,16 +3,17 @@ A person named Alice is defined below. Add a method "greet" so this person can say hello. */ - let person = { - name: "Alice", - age: 25 + name: "Alice", + age: 25, +}; +person.greet = function greeting(){ + return 'Hello everybody'; }; - - /* DO NOT EDIT ANYTHING BELOW THIS LINE */ - -console.log(`Expected result: Hello everybody. Actual result: ${person.greet()}`); \ No newline at end of file +console.log( + `Expected result: Hello everybody. Actual result: ${person.greet()}` +); diff --git a/Week-1/InClass/D-methods/exercise-2.js b/Week-1/InClass/D-methods/exercise-2.js index 8e993fc..86c1724 100644 --- a/Week-1/InClass/D-methods/exercise-2.js +++ b/Week-1/InClass/D-methods/exercise-2.js @@ -9,7 +9,9 @@ let person = { name: "Alice", age: 25 }; - +person.sayName = function sayingOwnName(){ + return `My name is ${this.name}`; +}; /* DO NOT EDIT ANYTHING BELOW THIS LINE diff --git a/Week-1/InClass/D-methods/exercise-3.js b/Week-1/InClass/D-methods/exercise-3.js index be23748..65cd5f3 100644 --- a/Week-1/InClass/D-methods/exercise-3.js +++ b/Week-1/InClass/D-methods/exercise-3.js @@ -8,11 +8,12 @@ let person = { name: "Alice", age: 25, currentAddress: "Glasgow", - changeAddress: (newAddress) { - currentAddress = newAddress; + changeAddress: function (newAddress) { + return this.currentAddress = newAddress; + }, - celebrateBirthday: function { - that.age = that.age + 1; + celebrateBirthday: function(age) { + return this.age = this.age + 1; } }; diff --git a/Week-1/InClass/D-methods/exercise-4.js b/Week-1/InClass/D-methods/exercise-4.js index d89214a..3524808 100644 --- a/Week-1/InClass/D-methods/exercise-4.js +++ b/Week-1/InClass/D-methods/exercise-4.js @@ -8,12 +8,14 @@ let person = { name: "Alice", friends: ["John", "Nina"] }; - +person.makeFriend = function(newFriends){ + return this.friends.push(newFriends); +}; /* DO NOT EDIT ANYTHING BELOW THIS LINE */ person.makeFriend("Bob"); - +person.makeFriend("Alice"); console.log(`Expected result: 'John,Nina,Bob'. Actual result: ${person.friends}`); \ No newline at end of file diff --git a/Week-1/InClass/D-methods/exercise-5.js b/Week-1/InClass/D-methods/exercise-5.js index dcd198c..5cf9a90 100644 --- a/Week-1/InClass/D-methods/exercise-5.js +++ b/Week-1/InClass/D-methods/exercise-5.js @@ -17,10 +17,11 @@ let coffeeMachine = { }, insertedAmount: 0, insertMoney: function (amount) { - + amount = this.insertedAmount; + return amount; }, getCoffee: function (coffee) { - + } }; diff --git a/Week-1/InClass/E-arrays-of-objects/exercise-1.js b/Week-1/InClass/E-arrays-of-objects/exercise-1.js index 8d39a81..694f744 100644 --- a/Week-1/InClass/E-arrays-of-objects/exercise-1.js +++ b/Week-1/InClass/E-arrays-of-objects/exercise-1.js @@ -25,11 +25,15 @@ WRITE YOUR CODE BELOW */ -var persons = // Complete here - -var personNames = // Complete here - -var personsYoungerThan28YearsOld = // Complete here +var persons = [person1, person2, person3]; // Complete here +function takeNames(person){ + return person.name; +} +let personNames = persons.map(takeNames); // Complete here +function youngerThan28(person){ + return person.age < 28; +} +var personsYoungerThan28YearsOld = persons.filter(youngerThan28); // Complete here /* diff --git a/Week-1/InClass/E-arrays-of-objects/exercise-2.js b/Week-1/InClass/E-arrays-of-objects/exercise-2.js index c2259dd..ae3f7c9 100644 --- a/Week-1/InClass/E-arrays-of-objects/exercise-2.js +++ b/Week-1/InClass/E-arrays-of-objects/exercise-2.js @@ -39,12 +39,26 @@ DO NOT EDIT ANYTHING ABOVE THIS LINE WRITE YOUR CODE BELOW */ +function checkWithin500Kms(destination) { + return destination.distanceKms <= 500; +} +function getDestinationNames(destination) { + return destination.destinationName; +} -let destinationNamesWithin500Kms = // Complete here +let destinationNamesWithin500Kms = travelDestinations.filter(checkWithin500Kms).map(getDestinationNames); // Complete here +function getFerry(destination) { + return destination.transportations.includes("ferry"); +} +function reachAbleTrain(destination) { + return destination.transportations.includes("train"); +} +let destinationNameReachableByFerry = travelDestinations.filter(getFerry).map(getDestinationNames); // Complete here + function moreThan300kn(destination) { + return destination.distanceKms >= 300; + } -let destinationNameReachableByFerry = // Complete here - -let destinationNamesMoreThan300KmsAwayByTrain = // Complete here (PRINT THE RESULT IN THE CONSOLE USING FOREACH) +let destinationNamesMoreThan300KmsAwayByTrain = travelDestinations.filter(moreThan300kn).filter(reachAbleTrain).map(getDestinationNames);// Complete here (PRINT THE RESULT IN THE CONSOLE USING FOREACH) /* diff --git a/Week-1/InClass/E-arrays-of-objects/exercise-3.js b/Week-1/InClass/E-arrays-of-objects/exercise-3.js index a1ec691..bd8da42 100644 --- a/Week-1/InClass/E-arrays-of-objects/exercise-3.js +++ b/Week-1/InClass/E-arrays-of-objects/exercise-3.js @@ -15,36 +15,36 @@ and returns the number of restaurants in this area. */ let restaurant1 = { - name: "Paesano", - totalSeats: 10, - numberOfCustomers: 8, - address: { - city: "Glasgow", - area: "center" - }, - menu: ["pizza", "calzone", "salad"] + name: "Paesano", + totalSeats: 10, + numberOfCustomers: 8, + address: { + city: "Glasgow", + area: "center", + }, + menu: ["pizza", "calzone", "salad"], }; let restaurant2 = { - name: "Ubiquitous Chip", - totalSeats: 20, - numberOfCustomers: 10, - address: { - city: "Glasgow", - area: "west" - }, - menu: ["salad", "chocolate cake", "roast lamb"] + name: "Ubiquitous Chip", + totalSeats: 20, + numberOfCustomers: 10, + address: { + city: "Glasgow", + area: "west", + }, + menu: ["salad", "chocolate cake", "roast lamb"], }; let restaurant3 = { - name: "Monkeyz", - totalSeats: 15, - numberOfCustomers: 8, - address: { - city: "Glasgow", - area: "center" - }, - menu: ["stew", "chocolate cake", "panini"] + name: "Monkeyz", + totalSeats: 15, + numberOfCustomers: 8, + address: { + city: "Glasgow", + area: "center", + }, + menu: ["stew", "chocolate cake", "panini"], }; let restaurants = [restaurant1, restaurant2, restaurant3]; @@ -54,32 +54,60 @@ DO NOT EDIT ANYTHING ABOVE THIS LINE WRITE YOUR CODE BELOW */ - let restaurantFinderApplication = { - applicationName: "Restaurant Finder", - applicationVersion: "1.0", - restaurants: restaurants, - findAvailableRestaurants: function (numberOfPeople) { - // Complete here - }, - findRestaurantServingDish: function (dishName) { - // Complete here - }, - countNumberOfRestaurantsInArea: function (area) { - // Complete here - } + applicationName: "Restaurant Finder", + applicationVersion: "1.0", + restaurants: restaurants, + findAvailableRestaurants: function (numberOfPeople) { + // Complete here + let nameOfRestaurants = ""; + restaurants.forEach((restaurant) => { + if ( + numberOfPeople <= + restaurant.totalSeats - restaurant.numberOfCustomers + ) { + nameOfRestaurants += restaurant.name + ","; + } + }); + return nameOfRestaurants; + }, + findRestaurantServingDish: function (dishName) { + // Complete here + restaurants.filter((restaurant) => { + let newAee = []; + newAee.push((restaurant) => { + return menu.includes(dishName).map(restaurant.name); + + }); + + }); + }, + countNumberOfRestaurantsInArea: function (area) { + // Complete here + }, }; - /* DO NOT EDIT ANYTHING BELOW THIS LINE */ -let restaurantsAvailableFor5People = restaurantFinderApplication.findAvailableRestaurants(5); -console.log(`Find available restaurants for 5 people: Expected result: Ubiquitous Chip,Monkeyz, actual result: ${restaurantsAvailableFor5People}`); - -let restaurantsServingSalad = restaurantFinderApplication.findRestaurantServingDish("salad"); -console.log(`Find restaurants serving salad: Expected result: Paesano,Ubiquitous Chip, actual result: ${restaurantsServingSalad}`); - -let numberOfRestaurantsInCityCentre = restaurantFinderApplication.countNumberOfRestaurantsInArea("center"); -console.log(`Number of restaurants in city centre: Expected result: 2, actual result: ${numberOfRestaurantsInCityCentre}`); +let restaurantsAvailableFor5People = restaurantFinderApplication.findAvailableRestaurants( + 5 +); +console.log( + `Find available restaurants for 5 people: Expected result: Ubiquitous Chip,Monkeyz, actual result: ${restaurantsAvailableFor5People}` +); + +let restaurantsServingSalad = restaurantFinderApplication.findRestaurantServingDish( + "salad" +); +console.log( + `Find restaurants serving salad: Expected result: Paesano,Ubiquitous Chip, actual result: ${restaurantsServingSalad}` +); + +let numberOfRestaurantsInCityCentre = restaurantFinderApplication.countNumberOfRestaurantsInArea( + "center" +); +console.log( + `Number of restaurants in city centre: Expected result: 2, actual result: ${numberOfRestaurantsInCityCentre}` +); diff --git a/Week-1/InClass/F-object-keys/exercise-part-0.js b/Week-1/InClass/F-object-keys/exercise-part-0.js index d9b1085..2588f93 100644 --- a/Week-1/InClass/F-object-keys/exercise-part-0.js +++ b/Week-1/InClass/F-object-keys/exercise-part-0.js @@ -20,8 +20,8 @@ let highScores = { // ONLY EDIT BELOW HERE -let capitalCitiesKeys = ; -let highScoresKeys; +let capitalCitiesKeys = Object.keys(capitalCities); +let highScoresKeys = Object.keys(highScores); // ONLY EDIT ABOVE HERE diff --git a/Week-1/InClass/F-object-keys/exercise-part-1.js b/Week-1/InClass/F-object-keys/exercise-part-1.js index b8d4be7..4bae4a3 100644 --- a/Week-1/InClass/F-object-keys/exercise-part-1.js +++ b/Week-1/InClass/F-object-keys/exercise-part-1.js @@ -7,17 +7,19 @@ You're going to have to used what we learned at the start of this lesson, and so */ let mentorsAges = { - james: 29, - JOSH: 35, - JAMIE: 25, - Mozafar: 30 + james: 29, + JOSH: 35, + JAMIE: 25, + Mozafar: 30, }; // ONLY EDIT BELOW THIS LINE - -let mentorsNames = ; - -let mentorsNamedUppercased = ; +function allCapitalLetters(names) { + return names.toUpperCase(); +} +let mentorsNames = Object.keys(mentorsAges); +console.log(mentorsNames); +let mentorsNamedUppercased = mentorsNames.map(allCapitalLetters); // ONLY EDIT ABOVE THIS LINE diff --git a/Week-1/InClass/F-object-keys/exercise-part-2.js b/Week-1/InClass/F-object-keys/exercise-part-2.js index 6b6a1bb..2840745 100644 --- a/Week-1/InClass/F-object-keys/exercise-part-2.js +++ b/Week-1/InClass/F-object-keys/exercise-part-2.js @@ -35,14 +35,15 @@ let storeBranches = { // # 1 // prints [ 'glasgow', 'edinburgh' ] -console.log() +console.log(Object.keys(storeBranches)); // # 2 + // prints [ 'manager', 'assistant', 'interns' ] -console.log() +console.log(Object.keys(storeBranches.glasgow)); // # 3 // prints [ 'head_intern', 'intern' ] -console.log() +console.log(Object.keys(storeBranches.edinburgh.interns)) // ONLY EDIT ABOVE THIS LINE diff --git a/Week-3/Homework/mandatory/1-alarmclock/alarmclock.js b/Week-3/Homework/mandatory/1-alarmclock/alarmclock.js index 6ca81cd..5538587 100644 --- a/Week-3/Homework/mandatory/1-alarmclock/alarmclock.js +++ b/Week-3/Homework/mandatory/1-alarmclock/alarmclock.js @@ -1,25 +1,97 @@ -function setAlarm() {} +/** + # Make an Alarm Clock +In this folder you will find the basic setup of an alarm clock. + +You should only change code in the `alarmclock.js` file. + +## How the clock should work + + +/* +Every one second the title should count down by one. + +When the `Time Remaining` reaches `00:00` the alarm should play a sound. You can make the sound happen by using `playAlarm()`. + +You can stop the alarm sound by pressing the `Stop Alarm` button. + +## Need Help? + +Only read this section if you really need to! It's good to work this out for yourself. + +### Hints + +- Have you tried looking at the `setInterval` function? + +### Steps to complete + +1. When the `Set Alarm` button is clicked, get the value of the input field +2. When you have the input field value, set the title to the correct value +3. Work out how to update the `Time Remaining` title every second +4. When the remaining time left is 0, play the alarm sound + +## Extra Tasks + +If you have time and want to do more why not try + +- Make the background change color when the alarm clock finishes + - Try making the background flash! +- Could you add `pause` functionality so that the count down stops and then you restart it later? + */ +/* +When you click the `Set Alarm` button the counter at the top of the screen should change to the number you entered in the `input` field. For example, if the `input` field says `10` then the title should say `Time Remaining: 00:10`. +*/ +function setAlarm(alarm) { + let inputAlarm = document.querySelector("#alarmSet").value; + let remainingTime = document.querySelector("#timeRemaining"); + let startAlarm = setInterval(() => { + if (inputAlarm === 0) { + playAlarm(); + clearInterval(startAlarm); + } + getTime(inputAlarm); + remainingTime.textContent = `Time remaining: ${getTime(inputAlarm)}`; + inputAlarm--; + }, 1000); +} +function getTime(time) { + let minutes; + let seconds; + if (time > 60) { + minutes = Math.floor(time / 60); + seconds = time - minutes * 60; + } else { + minutes = 0; + seconds = time; + } + if (minutes < 10) { + minutes = "0" + minutes; + } + if (seconds < 10) { + seconds = "0" + seconds; + } + return `${minutes}:${seconds}`; +} // DO NOT EDIT BELOW HERE var audio = new Audio("alarmsound.mp3"); function setup() { - document.getElementById("set").addEventListener("click", () => { - setAlarm(); - }); + document.getElementById("set").addEventListener("click", () => { + setAlarm(); + }); - document.getElementById("stop").addEventListener("click", () => { - pauseAlarm(); - }); + document.getElementById("stop").addEventListener("click", () => { + pauseAlarm(); + }); } function playAlarm() { - audio.play(); + audio.play(); } function pauseAlarm() { - audio.pause(); + audio.pause(); } window.onload = setup; diff --git a/Week-3/Homework/mandatory/2-quotegenerator/index.html b/Week-3/Homework/mandatory/2-quotegenerator/index.html index b6115be..d4478c2 100644 --- a/Week-3/Homework/mandatory/2-quotegenerator/index.html +++ b/Week-3/Homework/mandatory/2-quotegenerator/index.html @@ -1,17 +1,21 @@ - - Quote Generator - - - - - - - + + Quote Generator + + + + + +
+ +
+ + + diff --git a/Week-3/Homework/mandatory/2-quotegenerator/quotes.js b/Week-3/Homework/mandatory/2-quotegenerator/quotes.js index 39ab245..9a8f598 100644 --- a/Week-3/Homework/mandatory/2-quotegenerator/quotes.js +++ b/Week-3/Homework/mandatory/2-quotegenerator/quotes.js @@ -1,3 +1,5 @@ +//qouteElement.textContent = `${quotes.quote} by ${quotes.author}`; + // DO NOT EDIT BELOW HERE // A function which will return one item, at @@ -10,483 +12,498 @@ // Returns // ------- // One item of the given array. -// +//cyf + // Examples of use // --------------- // pickFromArray([1,2,3,4]) //maybe returns 2 // pickFromArray(coloursArray) //maybe returns "#F38630" // // You DO NOT need to understand how this function works. + function pickFromArray(choices) { - return choices[Math.floor(Math.random() * choices.length)]; + return choices[Math.floor(Math.random() * choices.length)]; } // A list of quotes you can use in your app. // Feel free to edit them, and to add your own favourites. -const quotes = [ - { - quote: "Life isn’t about getting and having, it’s about giving and being.", - author: "Kevin Kruse", - }, - { - quote: "Whatever the mind of man can conceive and believe, it can achieve.", - author: "Napoleon Hill", - }, - { - quote: "Strive not to be a success, but rather to be of value.", - author: "Albert Einstein", - }, - { - quote: - "Two roads diverged in a wood, and I—I took the one less traveled by, And that has made all the difference.", - author: "Robert Frost", - }, - { - quote: "I attribute my success to this: I never gave or took any excuse.", - author: "Florence Nightingale", - }, - { - quote: "You miss 100% of the shots you don’t take.", - author: "Wayne Gretzky", - }, - { - quote: - "I’ve missed more than 9000 shots in my career. I’ve lost almost 300 games. 26 times I’ve been trusted to take the game winning shot and missed. I’ve failed over and over and over again in my life. And that is why I succeed.", - author: "Michael Jordan", - }, - { - quote: - "The most difficult thing is the decision to act, the rest is merely tenacity.", - author: "Amelia Earhart", - }, - { - quote: "Every strike brings me closer to the next home run.", - author: "Babe Ruth", - }, - { - quote: "Definiteness of purpose is the starting point of all achievement.", - author: "W. Clement Stone", - }, - { - quote: "We must balance conspicuous consumption with conscious capitalism.", - author: "Kevin Kruse", - }, - { - quote: "Life is what happens to you while you’re busy making other plans.", - author: "John Lennon", - }, - { - quote: "We become what we think about.", - author: "Earl Nightingale", - }, - { - quote: - "Twenty years from now you will be more disappointed by the things that you didn’t do than by the ones you did do, so throw off the bowlines, sail away from safe harbor, catch the trade winds in your sails. Explore, Dream, Discover.", - author: "Mark Twain", - }, - { - quote: "Life is 10% what happens to me and 90% of how I react to it.", - author: "Charles Swindoll", - }, - { - quote: - "The most common way people give up their power is by thinking they don’t have any.", - author: "Alice Walker", - }, - { - quote: "The mind is everything. What you think you become.", - author: "Buddha", - }, - { - quote: - "The best time to plant a tree was 20 years ago. The second best time is now.", - author: "Chinese Proverb", - }, - { - quote: "An unexamined life is not worth living.", - author: "Socrates", - }, - { - quote: "Eighty percent of success is showing up.", - author: "Woody Allen", - }, - { - quote: - "Your time is limited, so don’t waste it living someone else’s life.", - author: "Steve Jobs", - }, - { - quote: "Winning isn’t everything, but wanting to win is.", - author: "Vince Lombardi", - }, - { - quote: - "I am not a product of my circumstances. I am a product of my decisions.", - author: "Stephen Covey", - }, - { - quote: - "Every child is an artist. The problem is how to remain an artist once he grows up.", - author: "Pablo Picasso", - }, - { - quote: - "You can never cross the ocean until you have the courage to lose sight of the shore.", - author: "Christopher Columbus", - }, - { - quote: - "I’ve learned that people will forget what you said, people will forget what you did, but people will never forget how you made them feel.", - author: "Maya Angelou", - }, - { - quote: "Either you run the day, or the day runs you.", - author: "Jim Rohn", - }, - { - quote: "Whether you think you can or you think you can’t, you’re right.", - author: "Henry Ford", - }, - { - quote: - "The two most important days in your life are the day you are born and the day you find out why.", - author: "Mark Twain", - }, - { - quote: - "Whatever you can do, or dream you can, begin it. Boldness has genius, power and magic in it.", - author: "Johann Wolfgang von Goethe", - }, - { - quote: "The best revenge is massive success.", - author: "Frank Sinatra", - }, - { - quote: - "People often say that motivation doesn’t last. Well, neither does bathing. That’s why we recommend it daily.", - author: "Zig Ziglar", - }, - { - quote: "Life shrinks or expands in proportion to one’s courage.", - author: "Anais Nin", - }, - { - quote: - "If you hear a voice within you say “you cannot paint,” then by all means paint and that voice will be silenced.", - author: "Vincent Van Gogh", - }, - { - quote: - "There is only one way to avoid criticism: do nothing, say nothing, and be nothing.", - author: "Aristotle", - }, - { - quote: - "Ask and it will be given to you; search, and you will find; knock and the door will be opened for you.", - author: "Jesus", - }, - { - quote: - "The only person you are destined to become is the person you decide to be.", - author: "Ralph Waldo Emerson", - }, - { - quote: - "Go confidently in the direction of your dreams. Live the life you have imagined.", - author: "Henry David Thoreau", - }, - { - quote: - "When I stand before God at the end of my life, I would hope that I would not have a single bit of talent left and could say, I used everything you gave me.", - author: "Erma Bombeck", - }, - { - quote: - "Few things can help an individual more than to place responsibility on him, and to let him know that you trust him.", - author: "Booker T. Washington", - }, - { - quote: - "Certain things catch your eye, but pursue only those that capture the heart.", - author: " Ancient Indian Proverb", - }, - { - quote: "Believe you can and you’re halfway there.", - author: "Theodore Roosevelt", - }, - { - quote: "Everything you’ve ever wanted is on the other side of fear.", - author: "George Addair", - }, - { - quote: - "We can easily forgive a child who is afraid of the dark; the real tragedy of life is when men are afraid of the light.", - author: "Plato", - }, - { - quote: - "Teach thy tongue to say, “I do not know,” and thous shalt progress.", - author: "Maimonides", - }, - { - quote: "Start where you are. Use what you have. Do what you can.", - author: "Arthur Ashe", - }, - { - quote: - "When I was 5 years old, my mother always told me that happiness was the key to life. When I went to school, they asked me what I wanted to be when I grew up. I wrote down ‘happy’. They told me I didn’t understand the assignment, and I told them they didn’t understand life.", - author: "John Lennon", - }, - { - quote: "Fall seven times and stand up eight.", - author: "Japanese Proverb", - }, - { - quote: - "When one door of happiness closes, another opens, but often we look so long at the closed door that we do not see the one that has been opened for us.", - author: "Helen Keller", - }, - { - quote: "Everything has beauty, but not everyone can see.", - author: "Confucius", - }, - { - quote: - "How wonderful it is that nobody need wait a single moment before starting to improve the world.", - author: "Anne Frank", - }, - { - quote: "When I let go of what I am, I become what I might be.", - author: "Lao Tzu", - }, - { - quote: - "Life is not measured by the number of breaths we take, but by the moments that take our breath away.", - author: "Maya Angelou", - }, - { - quote: - "Happiness is not something readymade. It comes from your own actions.", - author: "Dalai Lama", - }, - { - quote: - "If you’re offered a seat on a rocket ship, don’t ask what seat! Just get on.", - author: "Sheryl Sandberg", - }, - { - quote: - "First, have a definite, clear practical ideal; a goal, an objective. Second, have the necessary means to achieve your ends; wisdom, money, materials, and methods. Third, adjust all your means to that end.", - author: "Aristotle", - }, - { - quote: "If the wind will not serve, take to the oars.", - author: "Latin Proverb", - }, - { - quote: - "You can’t fall if you don’t climb. But there’s no joy in living your whole life on the ground.", - author: "Unknown", - }, - { - quote: - "We must believe that we are gifted for something, and that this thing, at whatever cost, must be attained.", - author: "Marie Curie", - }, - { - quote: - "Too many of us are not living our dreams because we are living our fears.", - author: "Les Brown", - }, - { - quote: - "Challenges are what make life interesting and overcoming them is what makes life meaningful.", - author: "Joshua J. Marine", - }, - { - quote: "If you want to lift yourself up, lift up someone else.", - author: "Booker T. Washington", - }, - { - quote: - "I have been impressed with the urgency of doing. Knowing is not enough; we must apply. Being willing is not enough; we must do.", - author: "Leonardo da Vinci", - }, - { - quote: - "Limitations live only in our minds. But if we use our imaginations, our possibilities become limitless.", - author: "Jamie Paolinetti", - }, - { - quote: - "You take your life in your own hands, and what happens? A terrible thing, no one to blame.", - author: "Erica Jong", - }, - { - quote: - "What’s money? A man is a success if he gets up in the morning and goes to bed at night and in between does what he wants to do.", - author: "Bob Dylan", - }, - { - quote: "I didn’t fail the test. I just found 100 ways to do it wrong.", - author: "Benjamin Franklin", - }, - { - quote: - "In order to succeed, your desire for success should be greater than your fear of failure.", - author: "Bill Cosby", - }, - { - quote: "A person who never made a mistake never tried anything new.", - author: " Albert Einstein", - }, - { - quote: - "The person who says it cannot be done should not interrupt the person who is doing it.", - author: "Chinese Proverb", - }, - { - quote: "There are no traffic jams along the extra mile.", - author: "Roger Staubach", - }, - { - quote: "It is never too late to be what you might have been.", - author: "George Eliot", - }, - { - quote: "You become what you believe.", - author: "Oprah Winfrey", - }, - { - quote: "I would rather die of passion than of boredom.", - author: "Vincent van Gogh", - }, - { - quote: - "A truly rich man is one whose children run into his arms when his hands are empty.", - author: "Unknown", - }, - { - quote: - "It is not what you do for your children, but what you have taught them to do for themselves, that will make them successful human beings.", - author: "Ann Landers", - }, - { - quote: - "If you want your children to turn out well, spend twice as much time with them, and half as much money.", - author: "Abigail Van Buren", - }, - { - quote: - "Build your own dreams, or someone else will hire you to build theirs.", - author: "Farrah Gray", - }, - { - quote: - "The battles that count aren’t the ones for gold medals. The struggles within yourself–the invisible battles inside all of us–that’s where it’s at.", - author: "Jesse Owens", - }, - { - quote: "Education costs money. But then so does ignorance.", - author: "Sir Claus Moser", - }, - { - quote: - "I have learned over the years that when one’s mind is made up, this diminishes fear.", - author: "Rosa Parks", - }, - { - quote: "It does not matter how slowly you go as long as you do not stop.", - author: "Confucius", - }, - { - quote: - "If you look at what you have in life, you’ll always have more. If you look at what you don’t have in life, you’ll never have enough.", - author: "Oprah Winfrey", - }, - { - quote: - "Remember that not getting what you want is sometimes a wonderful stroke of luck.", - author: "Dalai Lama", - }, - { - quote: "You can’t use up creativity. The more you use, the more you have.", - author: "Maya Angelou", - }, - { - quote: "Dream big and dare to fail.", - author: "Norman Vaughan", - }, - { - quote: - "Our lives begin to end the day we become silent about things that matter.", - author: "Martin Luther King Jr.", - }, - { - quote: "Do what you can, where you are, with what you have.", - author: "Teddy Roosevelt", - }, - { - quote: - "If you do what you’ve always done, you’ll get what you’ve always gotten.", - author: "Tony Robbins", - }, - { - quote: "Dreaming, after all, is a form of planning.", - author: "Gloria Steinem", - }, - { - quote: - "It’s your place in the world; it’s your life. Go on and do all you can with it, and make it the life you want to live.", - author: "Mae Jemison", - }, - { - quote: - "You may be disappointed if you fail, but you are doomed if you don’t try.", - author: "Beverly Sills", - }, - { - quote: "Remember no one can make you feel inferior without your consent.", - author: "Eleanor Roosevelt", - }, - { - quote: "Life is what we make it, always has been, always will be.", - author: "Grandma Moses", - }, - { - quote: - "The question isn’t who is going to let me; it’s who is going to stop me.", - author: "Ayn Rand", - }, - { - quote: - "When everything seems to be going against you, remember that the airplane takes off against the wind, not with it.", - author: "Henry Ford", - }, - { - quote: - "It’s not the years in your life that count. It’s the life in your years.", - author: "Abraham Lincoln", - }, - { - quote: "Change your thoughts and you change your world.", - author: "Norman Vincent Peale", - }, - { - quote: - "Either write something worth reading or do something worth writing.", - author: "Benjamin Franklin", - }, - { - quote: "Nothing is impossible, the word itself says, “I’m possible!”", - author: "–Audrey Hepburn", - }, - { - quote: "The only way to do great work is to love what you do.", - author: "Steve Jobs", - }, - { - quote: "If you can dream it, you can achieve it.", - author: "Zig Ziglar", - }, +let quotes = [ + { + quote: "Life isn’t about getting and having, it’s about giving and being.", + author: "Kevin Kruse", + }, + { + quote: "Whatever the mind of man can conceive and believe, it can achieve.", + author: "Napoleon Hill", + }, + { + quote: "Strive not to be a success, but rather to be of value.", + author: "Albert Einstein", + }, + { + quote: + "Two roads diverged in a wood, and I—I took the one less traveled by, And that has made all the difference.", + author: "Robert Frost", + }, + { + quote: "I attribute my success to this: I never gave or took any excuse.", + author: "Florence Nightingale", + }, + { + quote: "You miss 100% of the shots you don’t take.", + author: "Wayne Gretzky", + }, + { + quote: + "I’ve missed more than 9000 shots in my career. I’ve lost almost 300 games. 26 times I’ve been trusted to take the game winning shot and missed. I’ve failed over and over and over again in my life. And that is why I succeed.", + author: "Michael Jordan", + }, + { + quote: + "The most difficult thing is the decision to act, the rest is merely tenacity.", + author: "Amelia Earhart", + }, + { + quote: "Every strike brings me closer to the next home run.", + author: "Babe Ruth", + }, + { + quote: "Definiteness of purpose is the starting point of all achievement.", + author: "W. Clement Stone", + }, + { + quote: "We must balance conspicuous consumption with conscious capitalism.", + author: "Kevin Kruse", + }, + { + quote: "Life is what happens to you while you’re busy making other plans.", + author: "John Lennon", + }, + { + quote: "We become what we think about.", + author: "Earl Nightingale", + }, + { + quote: + "Twenty years from now you will be more disappointed by the things that you didn’t do than by the ones you did do, so throw off the bowlines, sail away from safe harbor, catch the trade winds in your sails. Explore, Dream, Discover.", + author: "Mark Twain", + }, + { + quote: "Life is 10% what happens to me and 90% of how I react to it.", + author: "Charles Swindoll", + }, + { + quote: + "The most common way people give up their power is by thinking they don’t have any.", + author: "Alice Walker", + }, + { + quote: "The mind is everything. What you think you become.", + author: "Buddha", + }, + { + quote: + "The best time to plant a tree was 20 years ago. The second best time is now.", + author: "Chinese Proverb", + }, + { + quote: "An unexamined life is not worth living.", + author: "Socrates", + }, + { + quote: "Eighty percent of success is showing up.", + author: "Woody Allen", + }, + { + quote: + "Your time is limited, so don’t waste it living someone else’s life.", + author: "Steve Jobs", + }, + { + quote: "Winning isn’t everything, but wanting to win is.", + author: "Vince Lombardi", + }, + { + quote: + "I am not a product of my circumstances. I am a product of my decisions.", + author: "Stephen Covey", + }, + { + quote: + "Every child is an artist. The problem is how to remain an artist once he grows up.", + author: "Pablo Picasso", + }, + { + quote: + "You can never cross the ocean until you have the courage to lose sight of the shore.", + author: "Christopher Columbus", + }, + { + quote: + "I’ve learned that people will forget what you said, people will forget what you did, but people will never forget how you made them feel.", + author: "Maya Angelou", + }, + { + quote: "Either you run the day, or the day runs you.", + author: "Jim Rohn", + }, + { + quote: "Whether you think you can or you think you can’t, you’re right.", + author: "Henry Ford", + }, + { + quote: + "The two most important days in your life are the day you are born and the day you find out why.", + author: "Mark Twain", + }, + { + quote: + "Whatever you can do, or dream you can, begin it. Boldness has genius, power and magic in it.", + author: "Johann Wolfgang von Goethe", + }, + { + quote: "The best revenge is massive success.", + author: "Frank Sinatra", + }, + { + quote: + "People often say that motivation doesn’t last. Well, neither does bathing. That’s why we recommend it daily.", + author: "Zig Ziglar", + }, + { + quote: "Life shrinks or expands in proportion to one’s courage.", + author: "Anais Nin", + }, + { + quote: + "If you hear a voice within you say “you cannot paint,” then by all means paint and that voice will be silenced.", + author: "Vincent Van Gogh", + }, + { + quote: + "There is only one way to avoid criticism: do nothing, say nothing, and be nothing.", + author: "Aristotle", + }, + { + quote: + "Ask and it will be given to you; search, and you will find; knock and the door will be opened for you.", + author: "Jesus", + }, + { + quote: + "The only person you are destined to become is the person you decide to be.", + author: "Ralph Waldo Emerson", + }, + { + quote: + "Go confidently in the direction of your dreams. Live the life you have imagined.", + author: "Henry David Thoreau", + }, + { + quote: + "When I stand before God at the end of my life, I would hope that I would not have a single bit of talent left and could say, I used everything you gave me.", + author: "Erma Bombeck", + }, + { + quote: + "Few things can help an individual more than to place responsibility on him, and to let him know that you trust him.", + author: "Booker T. Washington", + }, + { + quote: + "Certain things catch your eye, but pursue only those that capture the heart.", + author: " Ancient Indian Proverb", + }, + { + quote: "Believe you can and you’re halfway there.", + author: "Theodore Roosevelt", + }, + { + quote: "Everything you’ve ever wanted is on the other side of fear.", + author: "George Addair", + }, + { + quote: + "We can easily forgive a child who is afraid of the dark; the real tragedy of life is when men are afraid of the light.", + author: "Plato", + }, + { + quote: + "Teach thy tongue to say, “I do not know,” and thous shalt progress.", + author: "Maimonides", + }, + { + quote: "Start where you are. Use what you have. Do what you can.", + author: "Arthur Ashe", + }, + { + quote: + "When I was 5 years old, my mother always told me that happiness was the key to life. When I went to school, they asked me what I wanted to be when I grew up. I wrote down ‘happy’. They told me I didn’t understand the assignment, and I told them they didn’t understand life.", + author: "John Lennon", + }, + { + quote: "Fall seven times and stand up eight.", + author: "Japanese Proverb", + }, + { + quote: + "When one door of happiness closes, another opens, but often we look so long at the closed door that we do not see the one that has been opened for us.", + author: "Helen Keller", + }, + { + quote: "Everything has beauty, but not everyone can see.", + author: "Confucius", + }, + { + quote: + "How wonderful it is that nobody need wait a single moment before starting to improve the world.", + author: "Anne Frank", + }, + { + quote: "When I let go of what I am, I become what I might be.", + author: "Lao Tzu", + }, + { + quote: + "Life is not measured by the number of breaths we take, but by the moments that take our breath away.", + author: "Maya Angelou", + }, + { + quote: + "Happiness is not something readymade. It comes from your own actions.", + author: "Dalai Lama", + }, + { + quote: + "If you’re offered a seat on a rocket ship, don’t ask what seat! Just get on.", + author: "Sheryl Sandberg", + }, + { + quote: + "First, have a definite, clear practical ideal; a goal, an objective. Second, have the necessary means to achieve your ends; wisdom, money, materials, and methods. Third, adjust all your means to that end.", + author: "Aristotle", + }, + { + quote: "If the wind will not serve, take to the oars.", + author: "Latin Proverb", + }, + { + quote: + "You can’t fall if you don’t climb. But there’s no joy in living your whole life on the ground.", + author: "Unknown", + }, + { + quote: + "We must believe that we are gifted for something, and that this thing, at whatever cost, must be attained.", + author: "Marie Curie", + }, + { + quote: + "Too many of us are not living our dreams because we are living our fears.", + author: "Les Brown", + }, + { + quote: + "Challenges are what make life interesting and overcoming them is what makes life meaningful.", + author: "Joshua J. Marine", + }, + { + quote: "If you want to lift yourself up, lift up someone else.", + author: "Booker T. Washington", + }, + { + quote: + "I have been impressed with the urgency of doing. Knowing is not enough; we must apply. Being willing is not enough; we must do.", + author: "Leonardo da Vinci", + }, + { + quote: + "Limitations live only in our minds. But if we use our imaginations, our possibilities become limitless.", + author: "Jamie Paolinetti", + }, + { + quote: + "You take your life in your own hands, and what happens? A terrible thing, no one to blame.", + author: "Erica Jong", + }, + { + quote: + "What’s money? A man is a success if he gets up in the morning and goes to bed at night and in between does what he wants to do.", + author: "Bob Dylan", + }, + { + quote: "I didn’t fail the test. I just found 100 ways to do it wrong.", + author: "Benjamin Franklin", + }, + { + quote: + "In order to succeed, your desire for success should be greater than your fear of failure.", + author: "Bill Cosby", + }, + { + quote: "A person who never made a mistake never tried anything new.", + author: " Albert Einstein", + }, + { + quote: + "The person who says it cannot be done should not interrupt the person who is doing it.", + author: "Chinese Proverb", + }, + { + quote: "There are no traffic jams along the extra mile.", + author: "Roger Staubach", + }, + { + quote: "It is never too late to be what you might have been.", + author: "George Eliot", + }, + { + quote: "You become what you believe.", + author: "Oprah Winfrey", + }, + { + quote: "I would rather die of passion than of boredom.", + author: "Vincent van Gogh", + }, + { + quote: + "A truly rich man is one whose children run into his arms when his hands are empty.", + author: "Unknown", + }, + { + quote: + "It is not what you do for your children, but what you have taught them to do for themselves, that will make them successful human beings.", + author: "Ann Landers", + }, + { + quote: + "If you want your children to turn out well, spend twice as much time with them, and half as much money.", + author: "Abigail Van Buren", + }, + { + quote: + "Build your own dreams, or someone else will hire you to build theirs.", + author: "Farrah Gray", + }, + { + quote: + "The battles that count aren’t the ones for gold medals. The struggles within yourself–the invisible battles inside all of us–that’s where it’s at.", + author: "Jesse Owens", + }, + { + quote: "Education costs money. But then so does ignorance.", + author: "Sir Claus Moser", + }, + { + quote: + "I have learned over the years that when one’s mind is made up, this diminishes fear.", + author: "Rosa Parks", + }, + { + quote: "It does not matter how slowly you go as long as you do not stop.", + author: "Confucius", + }, + { + quote: + "If you look at what you have in life, you’ll always have more. If you look at what you don’t have in life, you’ll never have enough.", + author: "Oprah Winfrey", + }, + { + quote: + "Remember that not getting what you want is sometimes a wonderful stroke of luck.", + author: "Dalai Lama", + }, + { + quote: "You can’t use up creativity. The more you use, the more you have.", + author: "Maya Angelou", + }, + { + quote: "Dream big and dare to fail.", + author: "Norman Vaughan", + }, + { + quote: + "Our lives begin to end the day we become silent about things that matter.", + author: "Martin Luther King Jr.", + }, + { + quote: "Do what you can, where you are, with what you have.", + author: "Teddy Roosevelt", + }, + { + quote: + "If you do what you’ve always done, you’ll get what you’ve always gotten.", + author: "Tony Robbins", + }, + { + quote: "Dreaming, after all, is a form of planning.", + author: "Gloria Steinem", + }, + { + quote: + "It’s your place in the world; it’s your life. Go on and do all you can with it, and make it the life you want to live.", + author: "Mae Jemison", + }, + { + quote: + "You may be disappointed if you fail, but you are doomed if you don’t try.", + author: "Beverly Sills", + }, + { + quote: "Remember no one can make you feel inferior without your consent.", + author: "Eleanor Roosevelt", + }, + { + quote: "Life is what we make it, always has been, always will be.", + author: "Grandma Moses", + }, + { + quote: + "The question isn’t who is going to let me; it’s who is going to stop me.", + author: "Ayn Rand", + }, + { + quote: + "When everything seems to be going against you, remember that the airplane takes off against the wind, not with it.", + author: "Henry Ford", + }, + { + quote: + "It’s not the years in your life that count. It’s the life in your years.", + author: "Abraham Lincoln", + }, + { + quote: "Change your thoughts and you change your world.", + author: "Norman Vincent Peale", + }, + { + quote: + "Either write something worth reading or do something worth writing.", + author: "Benjamin Franklin", + }, + { + quote: "Nothing is impossible, the word itself says, “I’m possible!”", + author: "–Audrey Hepburn", + }, + { + quote: "The only way to do great work is to love what you do.", + author: "Steve Jobs", + }, + { + quote: "If you can dream it, you can achieve it.", + author: "Zig Ziglar", + }, ]; +let quotesList = document.querySelector(".list-of-quotes"); +let randomNumber = Math.floor(Math.random() * quotes.length); +let displayedQuote = `" ${quotes[randomNumber].quote} " - by ${quotes[randomNumber].author}`; +quotesList.textContent = displayedQuote; +function newQuote() { + setInterval(() => {}, 1000); +} + +let buttonElement = document.querySelector(".myBtn"); +buttonElement.addEventListener("click", newQuote); +function refreshPage() { + window.location.reload(); +} diff --git a/Week-3/Homework/mandatory/2-quotegenerator/style.css b/Week-3/Homework/mandatory/2-quotegenerator/style.css index 63cedf2..f638ec6 100644 --- a/Week-3/Homework/mandatory/2-quotegenerator/style.css +++ b/Week-3/Homework/mandatory/2-quotegenerator/style.css @@ -1 +1,27 @@ /** Write your CSS in here **/ +div { + /*background-color: darkgreen;*/ + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + align-content: center; + border-style: solid; + border-width: 40px; + font-size: 20px; + padding: 50px; + border-color: darkmagenta; + margin-top: 100px; + margin-left: 50px; + margin-bottom: 10px; + margin-right: 50px; +} +.myBtn { + float: right; + margin: 100px; + background-color: rgb(69, 219, 9); + color: #fff; + padding: 10px; + font-size: 20px; + width: 150px; +} diff --git a/Week-3/Homework/mandatory/3-slideshow/images/image-1.jpg b/Week-3/Homework/mandatory/3-slideshow/images/image-1.jpg new file mode 100644 index 0000000..aaf8cb5 Binary files /dev/null and b/Week-3/Homework/mandatory/3-slideshow/images/image-1.jpg differ diff --git a/Week-3/Homework/mandatory/3-slideshow/images/image-2.jpg b/Week-3/Homework/mandatory/3-slideshow/images/image-2.jpg new file mode 100644 index 0000000..39672b9 Binary files /dev/null and b/Week-3/Homework/mandatory/3-slideshow/images/image-2.jpg differ diff --git a/Week-3/Homework/mandatory/3-slideshow/images/image-3.jpg b/Week-3/Homework/mandatory/3-slideshow/images/image-3.jpg new file mode 100644 index 0000000..eb1bf31 Binary files /dev/null and b/Week-3/Homework/mandatory/3-slideshow/images/image-3.jpg differ diff --git a/Week-3/Homework/mandatory/3-slideshow/images/image-4.jpg b/Week-3/Homework/mandatory/3-slideshow/images/image-4.jpg new file mode 100644 index 0000000..07e66b3 Binary files /dev/null and b/Week-3/Homework/mandatory/3-slideshow/images/image-4.jpg differ diff --git a/Week-3/Homework/mandatory/3-slideshow/images/image-5.jpg b/Week-3/Homework/mandatory/3-slideshow/images/image-5.jpg new file mode 100644 index 0000000..7e28321 Binary files /dev/null and b/Week-3/Homework/mandatory/3-slideshow/images/image-5.jpg differ diff --git a/Week-3/Homework/mandatory/3-slideshow/images/image-6.jpg b/Week-3/Homework/mandatory/3-slideshow/images/image-6.jpg new file mode 100644 index 0000000..47c14d6 Binary files /dev/null and b/Week-3/Homework/mandatory/3-slideshow/images/image-6.jpg differ diff --git a/Week-3/Homework/mandatory/3-slideshow/index.html b/Week-3/Homework/mandatory/3-slideshow/index.html index 39cd40e..06c21de 100644 --- a/Week-3/Homework/mandatory/3-slideshow/index.html +++ b/Week-3/Homework/mandatory/3-slideshow/index.html @@ -1,17 +1,26 @@ - - Slideshow - - - - - - - + + Slideshow + + + + + + + +
+ + + + + +
+ + diff --git a/Week-3/Homework/mandatory/3-slideshow/slideshow.js b/Week-3/Homework/mandatory/3-slideshow/slideshow.js index b55091c..4e64592 100644 --- a/Week-3/Homework/mandatory/3-slideshow/slideshow.js +++ b/Week-3/Homework/mandatory/3-slideshow/slideshow.js @@ -1 +1,48 @@ // Write your code here +let i = 0; +let imgages = []; +imgages[0] = "images/image-1.jpg"; +imgages[1] = "images/image-2.jpg"; +imgages[2] = "images/image-3.jpg"; +imgages[3] = "images/image-4.jpg"; +imgages[4] = "images/image-5.jpg"; +imgages[5] = "images/image-6.jpg"; +let forwardButton = document.querySelector(".forwardBtn"); +let displayImage = document.querySelector(".myImages"); +function displayNext() { + forwardButton.style.backgroundColor = "red"; + if (i < imgages.length) { + displayImage.src = imgages[i]; + i++; + } +} +forwardButton.addEventListener("click", displayNext); +let backwardButton = document.querySelector(".backwardBtn"); +function displayPrevious() { + if (i > 0 && i <= imgages.length) { + displayImage.src = imgages[i]; + i--; + } +} +backwardButton.addEventListener("click", displayPrevious); +let autoForwardBtn = document.querySelector(".autoForwardBtn"); +function autoDisplayForward() { + setInterval(() => { + if (i < imgages.length) { + displayImage.src = imgages[i]; + i++; + } + }, 3000); +} +autoForwardBtn.addEventListener("click", autoDisplayForward); +let autoBackwardBtn = document.querySelector(".autoBackwardBtn"); +function autoDisplayBackward() { + setInterval(() => { + if (i > 0 && i <= imgages.length) { + displayImage.src = imgages[i]; + i--; + } + }, 2500); +} +autoBackwardBtn.addEventListener("click", autoDisplayBackward); + diff --git a/Week-3/Homework/mandatory/3-slideshow/style.css b/Week-3/Homework/mandatory/3-slideshow/style.css index 63cedf2..4cce6d6 100644 --- a/Week-3/Homework/mandatory/3-slideshow/style.css +++ b/Week-3/Homework/mandatory/3-slideshow/style.css @@ -1 +1,10 @@ /** Write your CSS in here **/ +.myImages { + margin-top: 100px; + margin-left: 100px; + width: 414px; + height: 350px; +} +.myButtons { + margin-left: 100px; +} diff --git a/Week-3/InClass/Callbacks/exercise-1/exercise.js b/Week-3/InClass/Callbacks/exercise-1/exercise.js index 40f06b0..e45591e 100644 --- a/Week-3/InClass/Callbacks/exercise-1/exercise.js +++ b/Week-3/InClass/Callbacks/exercise-1/exercise.js @@ -4,10 +4,31 @@ EXERCISE 1 Task 1 Using setTimeout, change the background colour of the page after 5 seconds (5000 milliseconds). - +*/ +let pageBody = document.querySelector("body"); +setTimeout(myFunction, 5000); +function myFunction() { + pageBody.style.backgroundColor = "#5d0a3f"; +} +/* Task 2 Update your code to make the colour change every 5 seconds to something different. Hint: try searching for setInterval. Complete the exercises in this CodePen Prefer to work on a codepen? https://codepen.io/makanti/pen/abOreLg ================ -*/ \ No newline at end of file +*/ +let colours = [ + "green", + "red", + "blue", + "yellow", + "cyan", + "indigo", + "orange", + "pink", +]; +function changeColours() { + let randomColors = Math.floor(Math.random() * colours.length); + pageBody.style.backgroundColor = colours[randomColors]; +} +setInterval(changeColours, 5000); diff --git a/Week-3/InClass/Callbacks/exercise-2/exercise.js b/Week-3/InClass/Callbacks/exercise-2/exercise.js index eca9595..1370c4d 100644 --- a/Week-3/InClass/Callbacks/exercise-2/exercise.js +++ b/Week-3/InClass/Callbacks/exercise-2/exercise.js @@ -9,7 +9,9 @@ Create a function called "showMovies" that - iterates through the "movies" array and - for each movie, it creates a

element with the movie title and director and append it to the #all-movies div. - it sets the innerText of the #movies-number element to the total number of the movies in the array "movies" +*/ +/* Task 2 Amend your function above to only show movies after 1 second. Remember to use setTimeout to achieve that Create a new function called "addMovie" @@ -17,11 +19,15 @@ Create a new function called "addMovie" - it adds the new movie to the list of movies after 2 seconds. Remember to setTimeout to achieve that Call addMovies to add the new movie to the list and then showMovies to see the movies added on the screen. How many movies can you see on your page? +*/ +/* Task 3 Can you make sure the new movie you just added is showing on the screen? TIP: use callbacks +*/ +/* Task 4 - **Extra** Create a form anywhere on your page. The form should have - 4 input text fields, one for each property of your movie object @@ -35,36 +41,55 @@ Prefer to work on a codepen? https://codepen.io/makanti/pen/MWwMgmW?editors ================ */ const movies = [ - { - title: "Color Out of Space", - director: "Richard Stanley", - type: "sci-fi", - haveWatched: true, - }, - { - title: "A Twelve-Year Night", - director: "Álvaro Brechner", - type: "horror", - haveWatched: false, - }, - { - title: "The Whistlers", - director: "Corneliu Porumboiu", - type: "comedy", - haveWatched: true, - }, - { - title: "The Invisible Man", - director: "Leigh Whannell", - type: "horror", - haveWatched: false, - }, + { + title: "Color Out of Space", + director: "Richard Stanley", + type: "sci-fi", + haveWatched: true, + }, + { + title: "A Twelve-Year Night", + director: "Álvaro Brechner", + type: "horror", + haveWatched: false, + }, + { + title: "The Whistlers", + director: "Corneliu Porumboiu", + type: "comedy", + haveWatched: true, + }, + { + title: "The Invisible Man", + director: "Leigh Whannell", + type: "horror", + haveWatched: false, + }, ]; // create showMovies function +let allMovies = document.querySelector("#all-movies"); +function showMovies(movies) { + setTimeout(function () { + movies.forEach((movie) => { + let pElement = document.createElement("p"); + pElement.textContent = `${movie.title} by ${movie.director}`; + allMovies.appendChild(pElement); + }); + }, 1000); +} +let numberOfAllMovies = document.querySelector("#movies-number"); +numberOfAllMovies.innerText = movies.length; +console.log(showMovies(movies)); +console.log(numberOfAllMovies); // create a new movie object for your favorite movie - - +let newMovie = { + title: "let It Shine", + Director: "Paul Hoen", + type: "Musical", + haveWatched: true, +}; // create addMovies function +