title: JavaScript .reduce, previousValue is always undefined
body: <p>I am curious as to why previousValue is always undefined in the following code when using .reduce on an array:</p>
  
  <p>Code:</p>
  
  <pre><code>[2,2,2,3,4].reduce(function(previousValue, currentValue){
      console.log("Previous Value: " + previousValue);
      console.log("Current Value: " + currentValue);
  },0)
  </code></pre>
  
  <p>Output:</p>
  
  <pre><code>Previous Value: 0 (index):
  Current Value: 2 (index):
  Previous Value: undefined (index):
  Current Value: 2 (index):
  Previous Value: undefined (index):
  Current Value: 2 (index):
  Previous Value: undefined (index):
  Current Value: 3 (index):24
  Previous Value: undefined (index):23
  Current Value: 4 
  </code></pre>
  
  <p>A fiddle can be found here: <a href="http://jsfiddle.net/LzpxE/" rel="noreferrer">http://jsfiddle.net/LzpxE/</a></p>