10.6. Calculating Elapsed Time or Intervals Between Dates
Problem
You want to calculate an elapsed time, elapsed date, or relative time.
Solution
For simple elapsed time, add and subtract from the Epoch milliseconds
or the value returned by getTimer( ). For
more complex conversions, create custom
Date.doMath( ) and Date.elapsedTime(
)
methods.
Discussion
For simple conversions such as adding or subtracting an hour, day, or
week to or from a date, simply add or subtract from the
date’s Epoch milliseconds value. For this purpose,
note that a second is 1,000 milliseconds, a minute is 60,000
milliseconds, an hour is 3,600,000 milliseconds, a week is
604,800,000 milliseconds, and so on. Unless you have a spectacular
gift for remembering these conversion values, storing them as
constants of the Date class is the easiest
option. You can add the following constants to your
Date.as file for convenience:
// There are 1000 milliseconds in a second, 60 seconds in a minute, 60 minutes in an // hour, 24 hours in a day, and 7 days in a week. Date.SEC = 1000; Date.MIN = Date.SEC * 60; Date.HOUR = Date.MIN * 60; Date.DAY = Date.HOUR * 24; Date.WEEK = Date.DAY * 7;
You can use the Date.getTime( ) method to
retrieve a date’s current value in Epoch
milliseconds, and you can set the new value using the
Date.setTime( ) method. The following example
adds one day to a given Date object.
#include "Date.as" myDate = new Date(1978, 9, 13, 3, 55, 0, 0); // Displays: Fri Oct 13 03:55:00 GMT-0700 1978 trace(myDate); ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access