Fallback not working in for loop, Profile lookup challenge

Tell us what’s happening:
Describe your issue in detail here.
So the function wont return “No such contact” if the if statement fails. Don’t know why?
When i try running the code on VSC says that the firstName is undefined, does that have something to do with it?

  **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";
// Only change code above this line
}

lookUpProfile("Akira", "likes");
  **Your browser information:**

User Agent is: Mozilla/5.0 (X11; CrOS x86_64 14388.61.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.107 Safari/537.36

Challenge: Profile Lookup

Link to the challenge:

What does it say exactly?

You’re running the loop till the length of the array so you’re checking for an element out of the bounds of the array.
You need to change the condition to be i < array.length or i <= array.length - 1

Thank you so much, had me pulling out my hair.