`
tpfbx
  • 浏览: 19308 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

日期与时间

    博客分类:
  • flex
阅读更多

1、          获取系统当前时间

var 变量名:Date=new Date();

var today:Date=new Date();                      //获取系统当前时间

trace(today);

//显示Tue Sep 14 16:13:02 GMT+0800 2010

由于Flex是客户端的程序,所以获取的时间也为客户端时间。

2、          获取日期中的特定值

Date类中的每部分特定值都存储于特定的属性中,用户只要读取相应的属性就能获取日期中的特定的值。

属性名

说明

fullYear

表示4位数的年份,如2010

date

表示月中的第几天,范围从1~31

month

表示月份,范围从0~11

day

表示是星期几,范围从0~6

hours

表示小时,范围从0~23

minutes

表示分钟,范围从0~59

seconds

表示秒,范围从0~59

milliseconds

表示毫秒,范围从0~999

var today:Date=new Date();

trace(today.milliseconds);

3、          日期的格式化输出

使用DateFormat类中的Format方法可以方便地格式化日期和时间。DateFormat类在ascb.util包中。例如:

var formatter:DateFormat=

new DateFormat("m/d/Y H:i");

trace(formatter.format(today));

//显示:09/14/2010 18:12

DateFormat类中的特定值标识

标识符

说明

a

小写a.mp.m,如p.m

A

大写A.MP.M,如A.M

d

一月中的几号(有前导),如01

D

星期几简写,如Sun

F

月份,如January

g

小时(12小时制),如1

G

小时(24小时制),如1

h

小时(12小时制,有前导),如01

H

小时(24小时制,有前导),如01

i

分钟(有前导),如01

j

一月中的几号,如1

l

星期几,如Sunday

m

数字月份(有前导),如01

M

月份简写,如Jan

n

数字月份,如1

s

秒(有前导),如01

t

一月中的第几天,如31

w

一周中的第几天,如0

y

2位数年份

Y

4位数年份

时间格式中可另外加入字符串,例如:

var formatter:DateFormat=

new DateFormat("北京时间:m/d/Y H:i");

trace(formatter.format(today));

//北京时间: 09/14/2010 19:08

4、    使用计时器

var 变量名:Timer = new Timer(时间间隔);

下面是一个倒计时的例子:

public var i2:int = 7;

        protected function onTimer(event:TimerEvent):void

        {

          

           i2=i2-1;

           if(i2<0)  i2=7;

           lblTime.text=String(i2);

        }

 

        protected function button2_clickHandler(event:MouseEvent):void

        {

           var timer:Timer=new Timer(1000);

           timer.addEventListener(TimerEvent.TIMER,onTimer);

           timer.start();

    }

<s:Button x="51" y="280" label="倒计时" click="button2_clickHandler(event)"/>

   <s:Label x="240" y="280" text="7" id="lblTime" fontSize="34" width="38" height="41"/>

效果是从7依次减到0,然后循环;如果希望只执行7次。只需这样修改:

var timer:Timer=new Timer(10007);

5、    计算日期特定值的间隔

Date类以毫秒为单位存储,故时差间隔仍为毫秒。DateUtilities类提供了求特定值间隔的方法。

var d1:Date=new Date();

     //在第d1的基础上添加12个月34小时

var d2:Date=DateUtilities.addTo(d1,1,2,3,4);

           var s:String=

              DateUtilities.elapsedYears(d2,d1)+""+

              DateUtilities.elapsedMonths(d2,d1)+""+

              DateUtilities.elapsedDays(d2,d1)+""+

              DateUtilities.elapsedHours(d2,d1)+"小时";

         trace(s);

显示:11442910300小时

addTo()方法第一个参数为基准日期,从第二个参数起,分别表示要增加的年、月、日、时、分、秒、毫秒。

DateUtilities类中的求间隔方法还可以有第三个参数,其值只有truefalse,表示是否返回相对值。

var s:String=

           DateUtilities.elapsedYears(d2,d1,true)+""+

           DateUtilities.elapsedMonths(d2,d1,true)+""+

           DateUtilities.elapsedDays(d2,d1,true)+""+

           DateUtilities.elapsedHours(d2,d1,true)+"小时";

      trace(s);

显示:1264小时

6、从字符串中获取日期

var fm:DateFormat=new DateFormat("m/d/Y");

var d:Date=fm.parse("08/14/2010");

trace(d);

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics