Tell us what’s happening:
Why is my code not fulfilling the “no such contact” tests? It fulfills the others. I ran it through ChatGPT to see if the output would give “no such contact” for (“Bob”, “number”) and it did, but it doesn’t on the test. It’s my 4th day coding be gentle
EDIT: I removed the “=” from “i <= contacts.length” and it worked, but I don’t fully understand why. If someone could explain that’d be awesome. Thanks!
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) {
if (contacts[i].hasOwnProperty(prop)){
return contacts[i][prop]
}else if (!contacts[i].hasOwnProperty(prop)) {
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
Challenge Information:
Basic JavaScript - Profile Lookup