Basic JS - Profile Lookup

Hi there,

I’m stuck at the Profile Lookup challenge. My code passes a few tests but no all of them. It seems that my code stops running at the first iteration of the for loop. What am I doing wrong here?

// 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];
      }
        return "No such property";
    }
      return "No such contact";
  }
  // Only change code above this line
}

lookUpProfile("Akira", "likes");

The return keyword immediately exits the function, even inside of a for loop. Think about the logic, can you say there is “No such contact” before checking every member of the list?

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.