title: forEach on array of undefined created by Array constructor
body: <p>I am just wondering why it is not possible to make forEach on array of undefined.</p>
  
  <p>Code:</p>
  
  <pre><code>var arr = new Array(5); // [undefined x 5]
  
  //ES5 forEach
  arr.forEach(function(elem, index, array) {
      console.log(index);
  });
  
  //underscore each
  _.each(arr, function(elem, index, array) {
      console.log(index);
  });
  </code></pre>
  
  <p>Both examples do not execute function.</p>
  
  <p>Now to make foreach, I have to make:</p>
  
  <pre><code>var arr = [0,0,0,0,0];
  </code></pre>
  
  <p>Then make forEach on it.</p>
  
  <p>I am trying to make an array with specified size and loop through it, avoiding <code>for</code> loop. I think that it is clearer using forEach than for loop. 
  With array with length 5 it is not a problem, but it would be ugly with bigger arrays.</p>
  
  <p>Why there is a problem looping through array of undefined values ?</p>