title: Integer overflow to negative number
body: <p>According to this <a href="https://msdn.microsoft.com/nl-nl/gg622936" rel="noreferrer">link</a>, I learned that in IE8 the the new element's index will be a negative number if the array was created with an index greater than 2147483647. </p>
  
  <p>And there is this sample :</p>
  
  <pre><code>function test() { 
      var arr = new Array();         
      arr[2147483650] = 10000; 
      arr.push(10);     
      document.write(arr["-2147483645"] == 10); 
  } 
  test();
  </code></pre>
  
  <p>What I don't understand is, how come the newly added element of the array have the index of <code>-2147483645</code>, I understand the negative part, I just don't know how to know that the new index is <code>2147483645</code>, not <code>-2147483644</code> or <code>-2147483651</code> ... </p>