10.4. Formatting Milliseconds as Minutes and Seconds
Problem
You want to display milliseconds
in minutes and seconds
(mm:ss) format.
Solution
Create and use a custom, static method,
Date.formatMilliseconds( ).
Discussion
Many values in ActionScript are given in milliseconds. For example,
sound lengths are given in milliseconds. However, in most cases, you
want to format the value as minutes and seconds when displaying it to
the user. You can accomplish this with a short custom method that
we’ll add to the Date class.
Here’s our static method—a static method is
called directly from the class, rather than on an object
instance—that converts milliseconds to the format
mm:ss. Add this
code to your Date.as file for easy inclusion in
other projects.
Date.formatMilliseconds = function (millis) {
// Determine the minutes and seconds portions of the time.
var seconds = millis / 1000;
var m = Math.floor(seconds/60);
var s = Math.round(seconds - (m * 60));
// Add leading zeros to one-digit numbers.
if (m < 10) {
m = "0" + m;
}
if (s < 10) {
s = "0" + s;
}
return m + ":" + s;
};Here’s an example of how you can use this method:
#include "Date.as" // AssumingmySound_soundis aSoundobject, get its duration in milliseconds. dur = mySound_sound.duration; // Create a text field to display the value. this.createTextField("displayTime_txt", 1, 0, 0, 100, 20); // Display the time value formatted asmm:ss. displayTime_txt.text = Date.formatMilliseconds(dur);
See Also
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