title: foreach return object property javascript
body: <p>In the following code, can somebody explain why object property is returned using a for loop but not using a forEach.
  Is it something related to returning object references or is it something specific to forEach loop on an array ?</p>
  
  <pre><code>var empModule = (function(){
      var empArray = [{
          "name":"Aish",
          "age":"27",
          "location": "All"
      },{
          "name":"Anu",
          "age":"26",
          "location": "Muz"
      },{
          "name":"Vern",
          "age":"25",
          "location": "Mang"
      }];
  
      var searchAge = function(name){  
          for(var i=0;i&lt;empArray.length;i++) {
              if(empArray[i].name === name) {
                  return empArray[i].age;
              }
          };
      };
  
      var searchLocation = function(name){
          empArray.forEach(function(obj){
              if(name === obj.name) {
                  return obj.location;
              }
          });
      };
  
      return {
          findAge: searchAge,
          findLocation: searchLocation
      };
  
  })();
  var secAge = empModule.findAge("Anu");
  console.log(secAge); // Correct Output
  var thirdLoc = empModule.findLocation("Vern");
  console.log(thirdLoc); // Returns undefined
  </code></pre>