Tell us what’s happening:
There’s one thing in this code that I don’t understand. In the function “lookUpProfile” I see that if I pass (“Kristian”, “Likes”) it will return Kristian’s likes. However, it still says “return ‘No such contact’” at the end of the function. It has no conditions, so it seems like it should just return the string at the end of the function. Shouldn’t BOTH Kristian’s likes AND the string “No such contact” be returned? I see that it does not, but can someone explain why?
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 i = 0; i < contacts.length; i++) {
if (name == contacts[i].firstName) {
if (contacts[i].hasOwnProperty(prop)) {
return contacts[i][prop];
} else {
return "No such property";
}
}
}
return "No such contact"
// Only change code above this line
}
lookUpProfile("Akira", "likes");
console.log (lookUpProfile("Kristian", "likes"))
Your browser information:
User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36
Challenge: Basic JavaScript - Profile Lookup
Link to the challenge: