我有一个计算和显示4个潮汐的AS3代码。 示例:
高1 = 13:20
高2 = 23:30
低1 = 05:30
低2 = 16:20
在代码中,我不打算在这里进行计算,因为它太长而且对于这个问题不是必需的,但变量是:
var $pmm:String;
var $pms:String;
var $bmm:String;
var $bms:String;
High 1 = $pmm
High 2 = $pms
Low 1 = $bmm
Low 2 = $bms
该应用还会显示实际时间
var my_timer:Timer=new Timer(1000);
my_timer.addEventListener(TimerEvent.TIMER, onTimer);
my_timer.start();
function onTimer(e:TimerEvent):void {
now = new Date();
trace(now.hours + ":" + now.minutes);
}
actual_time.text=now.hours + ":" + now.minutes;
是否有一种简单的方法可以检测now.hours
是否最接近$pmm
,$pms
,$bmm
或$bms
?
答案 0 :(得分:1)
不确定这是否是最好的方法,但我会在现在的时间和潮汐时间之间取得差异并将其推入如下数组:
var tideArray = new Array();
tideArray.push({tide:"pmm", difference: 3});
tideArray.push({tide:"pms", difference: 5});
tideArray.push({tide:"bmm", difference: 0});
tideArray.push({tide:"bms", difference: 8});
tideArray.sortOn("difference", Array.NUMERIC);
trace(tideArray[0].tide);
第一个元素的轨迹将返回最小的时间差,在这种情况下将是bmm。