Basic JavaScript - Profile Lookup

I know my code is horrible and I have no idea where how to make this work. I called the condition gave it a value I think. I don’t know how to make it search through everything to get what I need. I’m not even sure how to ask for help with this .
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 name = firstName){

};
if (name){
return value;
}
else (name=== ""){
  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/118.0.0.0 Safari/537.36

Challenge: Basic JavaScript - Profile Lookup

Link to the challenge:

Can you explain what you intend this syntax to do/mean?

well its intended to look up the names that has been called in the contacts I guess. Maybe I need to go back a few lesson and try and figure it out

This is a really vague description, so its hard for me to comment.

There are definitely some serious syntax errors in your code right now, so I’m not sure of the overall logical flow you want the computer to follow.

First, the code should…

Then it should…

You need a plan first, then we can help you write the syntax that matches that plan!

// 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 (name = firstName; i<4; ++i){
  if(firstName === "kristian","lastName")
  return "vos";
}else{
  return "No such contact";
}

  // Only change code above this line
}

lookUpProfile("Akira", "likes");

my plan is to get

  • lookUpProfile("Kristian", "lastName") should return the string Vos

  • Failed:lookUpProfile("Sherlock", "likes") should return ["Intriguing Cases", "Violin"]

  • Failed:lookUpProfile("Harry", "likes") should return an array

  • Failed:lookUpProfile("Bob", "number") should return the string No such contact

  • Failed:lookUpProfile("Bob", "potato") should return the string No such contact

  • Failed:lookUpProfile("Akira", "address") should return the string No such property2

That’s not really a plan. That’s a list of result you want to get at.

A plan is a list of steps, sort of like a building plan is not the finished building itself!


Can you describe what these two lines of code do? I don’t think they quite do what you intend.

first line is suppose to call the for function and give the variable name something. then its suppose to go through the list somehow?

second line is suppose to return Kristian, lastname if everything matched up?

Ok, so go back and double check how for loops work. Its really hard to use syntax that you don’t understand.

I kind of get how they work with numbers but don’t seem to understand how they work with just strings or dose that even matter

“kind of get how they work” means you are trying to build on sand here. Go double check the lesson on for loops, then look at what you have written here.