Date.prototype.getTime

Peter Hall peterjoel at gmail.com
Tue Jun 27 20:46:02 PDT 2006


I was, perhaps, thinking of an old issue
(http://chattyfig.figleaf.com/pipermail/flashcoders/2001-August/007612.html)

Peter


On 6/27/06, Bob Ippolito <bob at redivi.com> wrote:
>
> On Jun 27, 2006, at 8:07 PM, Peter Hall wrote:
>
> >> I was under the impression that the following was more idiomatic,
> >> but I could be wrong:
> >>
> >> > var before = Date.now();
> >> > doStuff();
> >> > var after = Date.now();
> >> > var elapsedTime = after - before;
> >>
> >
> > Perhaps. But getTime() is what is implemented in es3, and I don't
> > think this can change. The question is over the consistency of the
> > precision of this value between implementations.
> >
> > I don't have a mac here to test, but I was under the impression that
> > timing within Actionscript had a lower precision on macs than windows
> > (as opposed to P.T.Withington's observation of the reverse).
>
> I dunno what precision it has elsewhere, but it definitely has msec
> precision on OS X (Intel). You're definitely right in that Flash on
> Mac OS X is generally slow in comparison to anywhere else, but speed
> of execution and precision are very different things...
>
> With the given snippet:
> var l = 0;
> var i = 4;
> while (i > 0) {
>         var n = (new Date()).getTime();
>         if (n != l) {
>                 trace(n);
>                 l = n;
>                 i--;
>         }
> }
>
> I just got the following traces (with plenty of other processes
> running):
>
> 1151465324221
> 1151465324222
> 1151465324223
> 1151465324224
>
> > I don't think it is acceptable to standardise on anything coarser than
> > 1 millisecond precision, and it is probably not practical (or indeed
> > useful) to standardise on anything finer. getTime() should return an
> > int, representing milliseconds, not a float. I don't know what you do
> > about platforms where that precision is not possible to implement; and
> > perhaps this is why es3 does not specify a precision. (It specifies
> > only the fact that the unit is milliseconds, not the degree to which
> > that measurement is accurate).
>
> Why not a (64-bit) float? Millisecond precision is pretty weak, it'd
> be nicer to have higher precision where available and a float is the
> only reasonable way to get it (since nanoseconds don't fit well in a
> 32-bit integer).
>
> -bob
>
>



More information about the Es4-discuss mailing list