Strange javascript behavior of `map` in Firefox
<p>Here's some strange javascript behavior of the <code>map</code> function in Firefox.</p>

<p>During an error condition of a web-app (when firebug pauses on the error) typing the following into Firebug console:</p>

<pre><code>["a", "b", "c", "d"].map(function(val, i, arr) {
    return val + " " + i + " " + typeof arr;
});
</code></pre>

<p>produces the following un-expected result:</p>

<pre><code>["a undefined undefined",
"b undefined undefined", 
"c undefined undefined", 
"d undefined undefined"]
</code></pre>

<p>At that time, if I open up another blank tab and type the same statement into the blank tab's Firebug Console, it produces the following expected result:</p>

<pre><code>["a 0 object", 
"b 1 object", 
"c 2 object", 
"d 3 object"]
</code></pre>

<p>This means, in the error condition, <code>map</code> calls the callback with 1 argument instead of the expected 3 arguments.</p>

<p>Quote from MDN:
(<a href="https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/map" rel="nofollow">https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/map</a>)</p>

<blockquote>
  <p>callback is invoked with three arguments: the value of the element,
  the index of the element, and the Array object being traversed.</p>
</blockquote>

<p>Is the unexpected behavior because of the app forcing firefox into some mode?</p>

<p>(I'm using Firefox 12.0)</p>
