Tell us what’s happening:
I cannot understand why it does not work! I have read almost every post on the forum, and I don’t see any trouble with my code. I have console logged every step of the function, and still it does not provide any return after the for loop, even though it obviously gets there with only two possible outcomes. There is still an error. I have run it in the VS code - it is working, please explain why it is wrong?
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 (contacts[i]['firstName'] === name && contacts[i].hasOwnProperty(prop)) {
return contacts[i][prop];
} else if (contacts[i]['firstName'] === name) {
return 'No such property';
}
}
return "No such contact";
// Only change code above this line
}
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/119.0.0.0 Safari/537.36 Edg/119.0.0.0
Challenge Information:
Basic JavaScript - Profile Lookup