JavaScript básico - Búsqueda de perfiles

Cuéntanos qué está pasando:
Describe tu problema en detalle aquí.
¿Porque no funciona?
Tu código hasta el momento
function lookUpProfile(name, prop) {
// Cambia solo el código debajo de esta línea
for (let i = 0; i < contacts.length; i++) {
if (contacts[i].firstName == name, contacts[i].hasOwnProperty(prop) == true){
return contacts[i][prop];
} else if (contacts[i].firstName == name, contacts[i].hasOwnProperty(prop) != true) {
return “No such property”;
} else if (contacts[i].firstName != name) {
return “No such contact”;
}}
// Cambia solo el código encima de esta línea
}

// Configuración
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) {
  // Cambia solo el código debajo de esta línea
   for (let i = 0; i < contacts.length; i++) {
  if (contacts[i].firstName == name, contacts[i].hasOwnProperty(prop) == true){
  return contacts[i][prop];
  } else if (contacts[i].firstName  == name, contacts[i].hasOwnProperty(prop) != true) {
    return "No such property";
  } else if (contacts[i].firstName  != name) {
    return "No such contact";
  }}
  // Cambia solo el código encima de esta línea
}

lookUpProfile("Akira", "likes");
console.log(contacts[1].firstName);
console.log(lookUpProfile("Akira", "likes"));
console.log(lookUpProfile("Bob", "number"));

Información de tu navegador:

El agente de usuario es: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36

Desafío: JavaScript básico - Búsqueda de perfiles

Enlaza al desafío:

1 Like

You do not separate conditions using commas, you use logical operators such as && and ||

As for your logic, I would suggest you look at the hint page. Pay attention to hints 2 (notice mention of nested logic) and 3 (notice the placement of the return).

1 Like