title: Full range of JavaScript Date objects?
body: <p>I'm reading info on the mix/max values of JavaScript date objects in various implementations.</p>
  
  <p>Mozilla docs say JavaScript supports "<a href="https://developer.mozilla.org/en/JavaScript/Guide/Predefined_Core_Objects#Date_Object" rel="nofollow">-100,000,000 days to +100,000,000</a> on either side" of the UNIX epoch. If my math is correct, this should be 8.64e15 ms on either side.</p>
  
  <p>Microsoft MSDN says JScript supports "<a href="http://msdn.microsoft.com/en-us/library/7hcawkw2.aspx" rel="nofollow">approximately 285,616 years</a> on either side" of the UNIX epoch.</p>
  
  <p>The unit tests for Google v8 indicate <a href="http://code.google.com/p/v8/source/browse/trunk/test/mjsunit/date.js" rel="nofollow">+/-1e8 days</a> from epoch.</p>
  
  <p>ECMAScript 5.1 <a href="http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf" rel="nofollow">specifies a little more clearly</a>:</p>
  
  <blockquote>
    <p>Time is measured in ECMAScript in milliseconds since 01 January, 1970
    UTC. In time values leap seconds  are ignored. It is assumed that
    there are exactly 86,400,000 milliseconds per day. ECMAScript Number
    values  can represent all integers from  –9,007,199,254,740,992 to
    9,007,199,254,740,992; this range suffices to  measure times to
    millisecond precision for any instant that is within approximately
    285,616 years, either  forward or backward, from 01 January, 1970 UTC.</p>
    
    <p>The actual range of times supported by ECMAScript Date objects is
    slightly smaller: exactly  –100,000,000  days to 100,000,000 days
    measured relative to midnight at the beginning of 01 January, 1970
    UTC. This gives  a range of 8,640,000,000,000,000 milliseconds to
    either side of 01 January, 1970 UTC</p>
  </blockquote>
  
  <p>I'm curious, does anyone know any implementation which <strong>do not</strong> actually support this "+/-1e8 days from epoch" range?</p>