diff --git a/assignments/arrays.js b/assignments/arrays.js index 1dbf8bd35..5c7756408 100644 --- a/assignments/arrays.js +++ b/assignments/arrays.js @@ -75,30 +75,51 @@ let inventory = [ // ==== Challenge 1 ==== // The dealer can't recall the information for a car with an id of 33 on his lot. Help the dealer find out which car has an id of 33 by logging the car's year, make, and model in the console log provided to you below: -console.log(`Car 33 is a *car year goes here* *car make goes here* *car model goes here*`); +console.log(`Car 33 is a ${inventory[32].car_model} ${inventory[32].car_make} ${inventory[32].car_year}`); // ==== Challenge 2 ==== // The dealer needs the information on the last car in their inventory. What is the make and model of the last car in the inventory? Log the make and model into the console. -let lastCar = 0; -console.log(); +let lastCar = inventory.length - 1; +console.log(inventory[lastCar].car_make, inventory[lastCar].car_model); // ==== Challenge 3 ==== // The marketing team wants the car models listed alphabetically on the website. Sort all the car model names into alphabetical order and log the results in the console let carModels = []; -let carModelsSorted = []; -console.log(); + +for(i = 0; i < inventory.length; i++) { + carModels.push(inventory[i].car_model) +} + +let carModelsSorted = carModels.sort(); +console.log(carModelsSorted); // ==== Challenge 4 ==== // The accounting team needs all the years from every car on the lot. Create a new array from the dealer data containing only the car years and log the result in the console. let carYears = []; -console.log(); + +for(i = 0; i < inventory.length; i++) { + carYears.push(inventory[i].car_year) +} + +console.log(carYears) // ==== Challenge 5 ==== // The car lot manager needs to find out how many cars are older than the year 2000. Using the carYears array you just created, find out how many cars were made before the year 2000 by populating the array oldCars and logging it's length. -let oldCars = []; -console.log(); + +let oldCars = carYears.filter(car_year => car_year < 2000 ); +console.log(oldCars.length); // ==== Challenge 6 ==== -// A buyer is interested in seeing only BMW and Audi cars within the inventory. Return an array that only contains BMW and Audi cars. Once you have populated the BMWAndAudi array, use JSON.stringify() to show the results of the array in the console. +// A buyer is interested in seeing only BMW and Audi cars within the inventory. +//Return an array that only contains BMW and Audi cars. Once you have populated +//the BMWAndAudi array, use JSON.stringify() to show the results of the array in the console. + let BMWAndAudi = []; -console.log(); + + for (let i = 0; i < inventory.length; i++){ + if (inventory[i].car_make == "BMW" || inventory[i].car_make == "Audi") { + BMWAndAudi.push(inventory[i]); + } + } + +console.log(JSON.stringify(BMWAndAudi)); \ No newline at end of file diff --git a/assignments/function-conversion.js b/assignments/function-conversion.js index 55f57ef62..929fb9765 100644 --- a/assignments/function-conversion.js +++ b/assignments/function-conversion.js @@ -1,21 +1,21 @@ // Take the commented ES5 syntax and convert it to ES6 arrow Syntax -// let myFunction = function () { +// let myFunction = () => { // console.log("Function was invoked!"); // }; // myFunction(); -// let anotherFunction = function (param) { +// let anotherFunction = (param) => { // return param; // }; // anotherFunction("Example"); -// let add = function (param1, param2) { +// let add = (param1, param2) => { // return param1 + param2; // }; // add(1,2); -// let subtract = function (param1, param2) { +// let subtract = (param1, param2) => { // return param1 - param2; // }; // subtract(1,2); diff --git a/assignments/objects.js b/assignments/objects.js index 798d5e0cf..99f55abe9 100644 --- a/assignments/objects.js +++ b/assignments/objects.js @@ -19,26 +19,76 @@ const example = { // Write your intern objects here: +const mitzi = { + id: 1, + name: "Mitzi", + email: 'mmelloy0@psu.edu', + gender: 'F', +} + +const kennan = { + id: 2, + name: "Kennan", + email: 'kdiben1@tinypic.com', + gender: 'M', + speak: () => `Hello my name is Kennan.` +} + +const keven = { + id: 3, + name: "Keven", + email: 'kmummery2@wikimedia.org', + gender: 'M', +} + +const gannie = { + id: 4, + name: "Gannie", + email: 'gmartinson3@illinois.edu', + gender: 'M', +} + +const antonietta = { + id: 5, + name: "Antonietta", + email: 'adaine5@samsung.com', + gender: 'F', + multiplyNums: (num1, num2) => num1 * num2 +} + + // ==== Challenge 2: Reading Object Data ==== // Once your objects are created, log out the following requests from HR into the console: // Mitzi's name +console.log(mitzi.name) + // Kennan's ID +console.log(kennan.id) + // Keven's email +console.log(keven.email); + // Gannie's name +console.log(gannie.name); + // Antonietta's Gender +console.log(antonietta.gender); + // ==== Challenge 3: Object Methods ==== // Give Kennan the ability to say "Hello, my name is Kennan!" Use the console.log provided as a hint. -// console.log(kennan.speak()); + +console.log(kennan.speak()); // Antonietta loves math, give her the ability to multiply two numbers together and return the product. Use the console.log provided as a hint. -//console.log(antonietta.multiplyNums(3,4)); + +console.log(antonietta.multiplyNums(3,4)); // === Great work! === Head over to the the arrays.js. You may come back and attempt the Stretch Challenge once you have completed the challenges in arrays.js and function-conversion.js. diff --git a/script.js b/script.js new file mode 100644 index 000000000..9a407e864 --- /dev/null +++ b/script.js @@ -0,0 +1,168 @@ +// 'use strict'; + +console.log('💥 hello world 💥'); + +console.log(compilerTest); +var compilerTest; + +// VARIABLES +// Box/container to hold references to values +var hello = "world"; +let hello1 = "world1"; +const hello2 = "world2"; +hello3 = "world3"; + +console.log(hello, hello1, hello2, hello3); + +// var +// Can be used before declared +// Can be reassigned & redeclared +var importantVar = "This is some important code!!"; +importantVar = "Something else"; + +console.log(importantVar); + +// global variable +// Makes variable available in places where we don't want it +// Make sure to use var, let or const +global = "I am available everywhere!"; + +// let +// Cannot be used before declared +// Can be reassigned but not redeclared +let myNumber = 7; +myNumber = 9; + +console.log(myNumber); + +// const +// Cannot be used before declared +// Cannot be reassigned or redeclared +const myConstNumber = 17; + +console.log(myConstNumber); + +// Primitives +// Number, String, Boolean, undefined, null +const myNumber2 = 2; +const myNumber2Plus2 = 2 + 2; +const myString = "Some string"; +const myString2 = 'Some string'; +const myString3 = `Some string`; +const myString4 = "Some " + "string"; +const myBoolean = true; +const myBoolean1 = false; +const myUndefined = undefined; +const empty = null; + +console.log(myNumber2, myNumber2Plus2); + +// Composites +// Objects, Functions, Arrays +const myCar = { make: "Ford" }; +const myArray = [1, 2, 3, 4, true]; +const myFunc = function() { + // Something here +} + +// FUNCTIONS +// Function declaration +function myFunction(string) { + return string + " some more text"; +} + +console.log(myFunction('Something')); + +// Allows Hoisting! +console.log(myHoistedFunction('Hoisting!')); + +function myHoistedFunction(string) { + return string + " some more text"; +} + +// Function expression +//Anonymous/unnamed function +//Not hoisted +const greetMe = function() { + console.log('Hello ' + name) +} + +console.log(greetMe('John')) + +// Arrow function expressions +const myArrowFunction = ()=> { + return 'Hello from arrow function!' +} + +console.log(myArrowFunction()) + +//The one-liner + +const oneLiner = () => 'Hello from one line!' + +console.log(oneLiner) + +//OBJECTS +//functions in an object are called methods + +const myObject = { + key1: 'Hello', + key2: true, + key3: 12345, + key4: () => 'Hello from method!' +} + +console.log(myObject) + +//Dot notation + +console.log(myObject.key1); + +// Bracket notation +console.log(myObject['key2']); + +//Accessing function/method +console.log(myObject.key4()); + + +const tasks = { + task1: 'make an object', + task2: 'copy code', + task3: 'send to slack' +} + +//Object methods +//Object.keys() + +// console.log(Object.keys(task1)); + +//Object.values() + +//Object.entries() + + +//ARRAYS + +const myArray1 = Array(1, 2, 3, true, null, {}, Array(1, 2, 3)); +const myBracketArray = [1, 2, 3, 'hello'] + +console.log(myArray1); + +const jsFrameworks = ['react', 'angular', 'vue'] + +//.push() +//Add item to end of array +//.pop() +//Delte item of end of array +//.unshift() +//Add item to beggining of array +//.shift() +//Delete item from begging of array + + +//For loop +//Executes code x amount of times + +for(let i=0; i < 5; i++) { + console.log('Hi'); +} \ No newline at end of file