Created
October 23, 2020 06:35
-
-
Save ross-u/09c1ed2b3daacb8cfd58b5d1b08b1c0e to your computer and use it in GitHub Desktop.
Exercise Solution - Get the final grade (M1 W1)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const students = [ | |
{ | |
name: "Tony Parker", | |
firstProject: 80, | |
secondProject: 75, | |
finalProject: 90 | |
}, | |
{ | |
name: "Marc Barchini", | |
firstProject: 84, | |
secondProject: 65, | |
finalProject: 65 | |
}, | |
{ | |
name: "Claudia Lopez", | |
firstProject: 45, | |
secondProject: 95, | |
finalProject: 99 | |
}, | |
{ | |
name: "Alvaro Briattore", | |
firstProject: 82, | |
secondProject: 92, | |
finalProject: 70 | |
}, | |
{ | |
name: "Isabel Ortega", | |
firstProject: 90, | |
secondProject: 32, | |
finalProject: 85 | |
}, | |
{ | |
name: "Francisco Martinez", | |
firstProject: 90, | |
secondProject: 55, | |
finalProject: 78 | |
}, | |
{ | |
name: "Jorge Carrillo", | |
firstProject: 83, | |
secondProject: 77, | |
finalProject: 90 | |
}, | |
{ | |
name: "Miguel López", | |
firstProject: 80, | |
secondProject: 75, | |
finalProject: 75 | |
}, | |
{ | |
name: "Carolina Perez", | |
firstProject: 85, | |
secondProject: 72, | |
finalProject: 67 | |
}, | |
{ | |
name: "Ruben Pardo", | |
firstProject: 89, | |
secondProject: 72, | |
finalProject: 65 | |
} | |
]; | |
// during every function invocation new scope is created. After function finishes, scope is destroyed | |
const finalGrades = students.map( function (obj) { | |
// destructure the object | |
const { name, firstProject, secondProject, finalProject } = obj; | |
// Same as: | |
// const name = obj.name; | |
// const firstProject = obj.firstProject; | |
// const secondProject = obj.secondProject; | |
// const finalProject = obj.finalProject; | |
// calculate | |
const finalGrade = ( firstProject + secondProject + finalProject) / 3; | |
// convert to Integer | |
const finalGradeInt = parseInt(finalGrade); | |
// return the new object that will be stored in the new array | |
return { | |
name: name, | |
finalGrade: finalGradeInt | |
} | |
}); | |
console.log(finalGrades); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment