Basic JavaScript - Profile Lookup

Tell us what’s happening:
Describe your issue in detail here.
Hello everyone, I have in trouble in this question. I don’t know where my code is wrong.So I want to ask for your help. Thank you very much.
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 (name != contacts[i].firstName) {
     return "No such contact";
   }else if(!(contacts[i].hasOwnProperty(prop))) {
     return "No such property";
   }
  }

  // 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/110.0.0.0 Safari/537.36

Challenge: Basic JavaScript - Profile Lookup

Link to the challenge:

HI @Patrick-starx !

Welcome to the forum!

Your main issue is that your code is only checking the first object in that array and then immediately returning a value which exits the function. Your code never checks the other contacts in the array.

You will need to modify your first condition.
First check if name is an actual contact’s firstName. Then inside that condition check if the given property (prop ) is a property of that contact.

If true, return the “value” of that property. If false, return No such property.

Lastly, you should only return No such contact when you have gone through the entire array and the contact is not there.

Hope that helps!

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