Tell us what’s happening:
Hello, I am having trouble understanding what the i variable in the function lookUpProfile is doing. What I mean by this is how is a number able to relate to the name parameter and get the desired key. I need help in understanding the code *if(contacts[i].firstName === name) *. Or is this related to the properties of a dictionary with key: value pairs.
Pointers on things to learn or help with what to do to understand this would be much appreciated.
Apologies if this is confusing, and thank you in advance for any help.
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 (var i = 0; i < contacts.length; i++) {
if(contacts[i].firstName === name) {
return contacts[i][prop] || "No such property";
}
}
return "No such contact";
}
// Change these values to test your function
var data = lookUpProfile("Harry", "likes");
console.log(data);
// Only change code above this line
Your browser information:
User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36
Challenge: Basic JavaScript - Profile Lookup
Link to the challenge: