Profile Lookup ,code running but not passing all test

i am out of ideas on how to do this someone please help me i have tried everything

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){
// Only change code below this line

for(var i=0; i< contacts.length; i++) {
    switch()
  if(contacts[i].firstName === name && contacts[i].hasOwnProperty(prop)) {
      return contacts[i][prop];
  } 
  else if(contacts[i].firstName === name && contacts[i].hasOwnProperty(prop)== false)
   {
      return "No such property";
    }
     return "No such contact";
  }
 

// Only change code above this line
}

// Change these values to test your function
lookUpProfile("Kristian", "lastName");

Your browser information:

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

Link to the challenge:
https://learn.freecodecamp.org/javascript-algorithms-and-data-structures/basic-javascript/profile-lookup/

why do you have switch() at the start of the for loop?

Also, looks like you’re returning before the function has the chance to look through all the contacts (as in, if contacts[0] doesn’t match what you’re passing in, it returns “No such contact”, ending the for loop and exiting the function)

1 Like