[SPOILER] Profile Lookup: Need Help figuring out issue with code [SPOILER]

My code will only print the output for lookUpProfile(“Kristian”, “lastName”) , lookUpProfile(“Bob”, “potato”), and lookUpProfile(“Bob”, “number”) correctly. I am unable to return an array nor “No such property”. For the inputs that should display “No such property” or an array it shows “No such contact”.

Your code so far


// Setup
var 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){
let result = '';
for(let i=0 ; i<contacts.length ; i++){
   if(name === contacts[i]['firstName']){
     result = contacts[i][prop];
   } else if(name !== contacts[i]['firstName']){
     result = 'No such contact';
   } else if(contacts[i].hasOwnProperty(prop) === false){
     result = 'No such property';
   }
  
}   
return result;
}

console.log(lookUpProfile("Kristian", "lastName"));
console.log(lookUpProfile("Bob", "potato"));
console.log(lookUpProfile("Akira", "address"));
console.log(lookUpProfile("Harry", "likes"));
console.log(lookUpProfile("Sherlock", "likes"));

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36.

Challenge: Profile Lookup

Link to the challenge:

try looking at your code with a tool like this:

You return result after the loop, so it is only going to have the value assigned to it in the for loop. So, what ever the last contact is will determine the value returned. You need to rethink your algorithm.