Tell us what’s happening:
Describe your issue in detail here.
I used the answer provided by freeCodeCamp but I don’t know how they got the answer. There are comments provided in each and every line of code with a question, if possible and if you have the time, can you answer each and every one of them? Thank you.
**Your code so far**
// Setup
const contacts = [
{
firstName: "Akira",
lastName: "Laine",
number: "0543236543",
likes: ["Pizza", "Coding", "Brownie Points"],
},
{
firstName: "Harry",
lastName: "Potter",
number: "0994372684",
likes: ["Hogwarts", "Magic", "Hagrid"],
},
{
firstName: "Sherlock",
lastName: "Holmes",
number: "0487345643",
likes: ["Intriguing Cases", "Violin"],
},
{
firstName: "Kristian",
lastName: "Vos",
number: "unknown",
likes: ["JavaScript", "Gaming", "Foxes"],
},
];
function lookUpProfile(name, prop) {
// Only change code below this line
for (let x = 0; x < contacts.length; x++) { /* What's the point of the variable x and why should it count the length of contacts? */
if (contacts[x].firstName === name) { //Why is x being used here?
if (contacts[x].hasOwnProperty(prop)) { //Why is x being used here?
return contacts[x][prop];
} else {
return "No such property"; /* Why is this first when it relates to the second if statement? */
}
}
}
return "No such contact";
} // Why is this return on the bottom when it is related to the first if statement?
// Only change code above this line // Thanks again!
lookUpProfile("Akira", "likes");
**Your browser information:**
User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36
Challenge: Basic JavaScript - Profile Lookup
Link to the challenge: