I composed this function to convert a number to a time format (HH:MM:SS.T):
function convert_sec_HHMMSST(_arg:Number):String {
var hr:int;
var hrText:String;
var min:int;
var minText:String;
var sec:int;
var secText:String;
var tenths:Number;
var tenthsText:String;
hr = Math.floor(_arg/3600);
min = Math.floor((_arg - hr*3600)/60);
sec = Math.floor(_arg - min*60 - hr*3600);
tenths = Math.round(10*(_arg - hr*3600 - min*60 - sec));
if (hr < 10) {
hrText = "0" + hr.toString();
} else {
hrText = hr.toString();
}
if (min < 10) {
minText = "0" + min.toString();
} else {
minText = min.toString();
}
if (sec < 10) {
secText = "0" + sec.toString();
} else {
secText = sec.toString();
}
tenthsText = tenths.toString();
return hrText + ":" + minText + ":" + secText + "." + tenthsText;
}
time.text = convert_sec_HHMMSST(8893.6); // displays 02:28:13.6
It works. But I’m thinking it could be optimized for performance. How would you pare it down?