ActionScript中的日期和时间处理

日期和事件是在 ActionScript 程序中使用的一种常见的信息类型。

Date类和 flash.utils 包中的新 Timer 类提供了大部分的计时功能。

常见日期和时间任务
  • 处理 Date 对象;
  • 获取当前日期和时间;
  • 访问各个日期和时间单位;
  • 使用日期和时间执行运算;
  • 在时区之间进行转换;
  • 执行重复动作;
  • 在设定的时间间隔后执行动作;
创建Date对象

Date 类是所有核心类中构造函数方法形式最为多变的类之一。有四种方法来调用Date类:

  • 如果未给定参数,则 Date() 构造函数将按照所在时区的本地时间返回包含当期日期和时间的Date对象。
var now:Date = new Date();
  • 如果仅有一个数字参数,则Date() 构造函数将其视为自1970年1月1日以来经过的毫秒数,并返回对应的Date对象。返回的Date对象会按照所在的本地时区来显示值。
  var millisecondsPerDay:int = 1000 * 60 * 60 * 24;
  var startTime:Date = new Date(millisecondsPerDay);
  • 可以传递多个数值参数给Date()构造函数,该构造函数将这些参数分别视为年、月、日、小时、分钟、秒和毫秒,并返回对应的Date对象。
var millenium:Date = new Date(2000,0,1,0,0,0,0);
  • 可以将单个字符串参数传递给 Date() 构造函数,该构造函数将尝试把字符串解析为日期或时间部分,然后返回对应的Date对象。
var nextDay:Date = new Date("Mon May 1 2006 11:30:00 AM");

如果Date()构造函数无法成功解析该字符串,它将不会引发异常。但得到的Date对象将包含一个无效的日期值。

获取时间单位

Date 对象的属性:

  • fullYear 属性;
  • month 属性,数字格式,从0到11;
  • date 属性,表示月中某一天的日历数字,从1到31;
  • day 属性,表示一周中的某一天,0表示星期日;
  • hours 属性,范围从0到23;
  • minutes 属性;
  • seconds 属性;
  • milliseconds 属性;
执行运算

可以使用Date类对日期和时间执行加法和减法运算。日期值在内部以毫秒的形式保存,因此应将其他值转换成毫秒,再进行运算。

时区转换

在需要将日期转换时区时,可使用getTimezoneOffset()方法,该方法返回的值表示Date对象的时区与UTC之间相差的分钟数。

Timer 类(flash.utils.Timer)

Timer类主要用来处理计时函数,可以使用它在每次达到间隔时调度事件。
步骤:

  • 创建Timer类的实例,参数是计时器事件的间隔时间和挺值钱生成多少次事件。
var oneMinuteTimer:Timer = new Timer(1000,6)
//创建一个每秒调度一个事件且持续60秒的实例。
  • Timer对象在每次达到间隔时会调用TimerEvent对象。TimerEvent对象的事件类型是timer(由常量TimerEvent.TIMER 定义)
  • 当达到最后一次间隔时,它还会调度timerComplete 事件(由常量 TimerEvent.TIMER_COMPLETE 定义)。
flash.utils 包中的计时函数
函数说明
clearInterval(id:uint):void取消指定的 setIntervar() 调用。
clearTimeout(id:uint):void取消指定的 setTimeout() 调用。
getTimer():int返回自 Adobe Flash Player 被初始化以来经过的毫秒数。
setInterval(closure:Function,delay:Number,… arguments):uint以指定的间隔(单位是毫秒)运行函数。
setTimeout(closure:Function,delay:Number,… arguments):uint在指定的延迟(单位是毫秒)后运行指定的函数
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值