title: Lookup function in javascript
body: <p>I'm trying to solve a challenge and here's the problem set</p>
  
  <blockquote>
    <p>We have an array of objects representing different people in our
    contacts lists.</p>
    
    <p>A lookUpProfile function that takes firstName and a property (prop) as
    arguments has been pre-written for you.</p>
    
    <p>The function should check if firstName is an actual contact's
    firstName and the given property (prop) is a property of that contact.</p>
    
    <p>If both are true, then return the "value" of that property.</p>
    
    <p>If firstName does not correspond to any contacts then return "No such
    contact"</p>
    
    <p>If prop does not correspond to any valid properties then return "No
    such property"</p>
  </blockquote>
  
  <p>My attempt</p>
  
  <pre><code>//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(firstName, prop){
  // Only change code below this line
  for(var i =0;i&lt;contacts.length;i++){
    if (contacts[i].firstName===firstName &amp;&amp; contacts[i].hasOwnProperty(prop)===true){
      return contacts[i][prop];
    }
      else if (contacts[i].firstName===undefined){
  return "No such contact";
      }
    else if (contacts[i].hasOwnProperty===false){
      return "No such property";
    }
  
  }
  
  // Only change code above this line
  }
  
  // Change these values to test your function
  lookUpProfile("Akira", "likes");
  </code></pre>
  
  <p>If I enter non-existent values into the lookUpProfile function it just returns undefined</p>
  
  <p>e.g lookUpProfile("Donald", "likes");</p>
  
  <p>&lt;. Undefined</p>
  
  <p>Please help me fix this.
  You can also leave a comment on <a href="https://gist.github.com/karanjamutahi/211f255e7643b422eec3417a96180b88" rel="nofollow noreferrer">this gist</a></p>
  
  <p>Thanks</p>