Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 37 additions & 6 deletions assignments/arrays.js
Original file line number Diff line number Diff line change
Expand Up @@ -63,34 +63,65 @@ let inventory = [{"id":1,"car_make":"Lincoln","car_model":"Navigator","car_year"

// ==== 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_year"]+" "+ inventory[32]["car_make"]+" "+inventory[32]["car_model"]);
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

good use of referencing the index keeping in mind arrays start at 0.



// ==== 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();
lastCar = inventory.length-1;
console.log("Make for the last car is "+inventory[lastCar]["car_make"]+" "+"and Model for the last car is "+inventory[lastCar]["car_model"]);
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good. You may want to look into string literals, it will make your life easier.



// ==== 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 = [];
console.log();

for(let i=0; i<inventory.length; i++){
carModels[i] = inventory[i]["car_model"];
}

let sortedList= carModels.sort();
console.log(sortedList);


// ==== 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(let i=0; i<inventory.length; i++){
carYears[i] = 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();
for(let i=0; i<carYears.length; i++){
if(carYears[i] < 2000){
oldCars.push(carYears[i]);
}
}

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.
let BMWAndAudi =[];
console.log();
let BMWAndAudi =[];

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));




112 changes: 111 additions & 1 deletion assignments/objects.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,27 +19,83 @@ let example = {

// Write your intern objects here:

let intern1 = {
"id": 1,
"name": "Mitzi",
"email": "mmelloy0@psu.edu",
"gender": "F"
};


let intern2 = {
"id": 2,
"name": "Kennan",
"email": "kdiben1@tinypic.com",
"gender": "M"
};

let intern3 = {
"id": 3,
"name": "Keven",
"email": "kmummery2@wikimedia.org",
"gender": "M"
};

let intern4 = {
"id": 4,
"name": "Gannie",
"email": "gmartinson3@illinois.edu",
"gender": "M"
};

let intern5 = {
"id": 5,
"name": "Antonietta",
"email": "adaine5@samsung.com",
"gender": "F"
};


// ==== Challenge 2: Reading Object Data ====
// Once your objects are created, log out the following requests from HR into the console:

// Mitzi's name
intern1["name"];

// Kennan's ID
intern2["id"];

// Keven's email
intern3["email"];

// Gannie's name
intern4["name"];

// Antonietta's Gender
intern5["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());

intern2.speak = function(){
return "Hello, my name is Kennan";
};

console.log(intern2.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));

intern5.multiplyNums = function(a,b){
return (a*b);
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is technically accurate, however, its best practices to leave spaces between elements. i.e. return (a * b).

};

console.log(intern5.multiplyNums(3,4));


// === Great work! === Head over to the the arrays.js file or take a look at the stretch challenge

// ==== Stretch Challenge: Nested Objects and the this keyword ====
Expand All @@ -49,16 +105,70 @@ let example = {
// 3. Nest a grandchild object in the child object with properties for name and age. The name will be Sam and the age will be 30
// 4. Give each of the objects the ability to speak their names using the this keyword.

let parent = {}
let parent = {
"name": "Susan",
"age": 70,

"child": {
"name": "George",
"age": 50,
"grandchild": {
"name": "Sam",
"age": 30
}

}
}

parent.speak = function(){
return ("Hello, my name is "+this.name);
};

parent.speak();



parent.child.speak = function(){
return ("Hello, my name is "+this.name);
};


parent.child.grandchild.speak = function(){
return ("Hello, my name is "+this.name);
};

parent.child.grandchild.speak();




// Log the parent object's name
parent.name;
//Susan

// Log the child's age
parent.child.age;
//50

// Log the name and age of the grandchild
parent.child.grandchild.name;
//Sam

parent.child.grandchild.age;
//30

// Have the parent speak
parent.speak();

//'Hello, my name is Susan'

// Have the child speak
parent.child.speak();

//'Hello, my name is George'

// Have the grandchild speak
parent.child.grandchild.speak();

// 'Hello, my name is Sam'