JavaScript的日期对象提供了一种简单的方式来使用日期和时间值,其中封装了有关日期和时间的操作,它有大量设置、获得和处理日期和时间的方法,但是没有任何属性。下面将从创建Date对象实例和Date对象的方法两方面进行介绍。
(1)创建Date对象实例。具体语法如下:
Date 对象名 = new Date();
其中在语法声明是可以添加参数,具体情况如下。
- 无参数:此时获取当前计算机的日期和时间。
- 形如:“月 日 时: 分:秒” 的参数:此时将会创建指导日期和时间的实例。
- 形如“年,月,日,时,分,秒”的整数值参数:创建指导日期和时间的参数。
2和3是声明实例参数的两种不同形式,其都是以字符串的形式现实。具体实例代码如下:
var today = new Date(); //第一种形式显示 var now1 = new Date("march 13,2010 8:29:20); //第二种形式显示 var now2 = new Date(11,8,6,3,30,20); //第三中形式显示
(2)Date对象的方法。Date的方法很多,下面将对Date中常用到的方法进行简要介绍,使读者对Date部分的方法有所了解。
- Date():返回当时的日期和时间。
- getDate():从Date对象返回一个月中的某一天(1~31)。
- getDay():从Date对象返回一周中的某一天(0~6)。
- getMonth():从Date对象烦hi月份(0~11)。
- getYear():从Date对象以四位数字返回。
- getHours():返回Date对象的小时(0~24)。
- getMinutes():返回Date对象的分钟(0~59)。
- getSeconds():返回Date对象的秒数(0~59)。
- getMilliseconds():返回Date对象的毫秒数。
- getTime():返回1970年1月1日至今的毫秒数。
- getTimezoneOffset():返回本地时间于格林威治标准时间(GMT)的分钟差。
- getUTCDate():根据世界时从Date对象返回月中的一天(1~31)。
- getUTCDay():根据世界时从Date对象返回周中的第一天(0~6)。
- getUTCMonth():根据世界时从Date对象返回月份(0~11)。
- getUTCFullYear():根据世界时从Date对象返回四位数的年份。
- getUTCHours():根据世界时从Date对象返回Date对象的小时(0~23)。
- getUTCMinutes():根据世界时从Date对象返回Date对象的分钟(0~59)。
- getUTCSeconds():根据世界时从Date对象返回Date对象的秒数(0~59)。
- getUTCMilliseconds():根据世界时从Date对象返回Date对象的毫秒(0~999)。
- parse():返回1970年1月1日无业到指定日期(字符串)的毫秒数。
- setDate():设置Date对象中月的某一天(1~31)。
- setMonth():设置Date对象中月的月份(0~11)。
- setYear():设置Date对象中月的年份(四位数字)。
- setHours():设置Date对象中月的小时(0~23)。
- setMinutes():设置Date对象中月的分钟(0~59)。
- setSeconds():设置Date对象中月的秒钟(0~59)。
- setMilliseconds():设置Date对象中月的毫秒(0~999)。
- setTime():以毫秒设置Date对象。
- setUTCDate():根据世界时间设置Date对象中月份的第一天(1~31)。
- setUTCMonth():根据世界时间设置Date对象中的月份(0~11)。
- setUTCFullYear():根据世界时间设置Date对象中年份(四位数字)。
- setUTCHours():根据世界时间设置Date对象中的小时(0~23)。
- setUTCMinutes():根据世界时间设置Date对象中分钟(0~59)。
- setUTCSeconds():根据世界时间设置Date对象中秒钟(0~59)。
- setUTCMilliseconds():根据世界时间设置Date对象中的毫秒(0~999)。
- toSource():返回该对象的源代码。
- toString():把Date对象转换为字符串。
- toTimeString():把Date对象的时间部分转换为字符串。
- toDateString():把Date对象的日期部分转换为字符串。
- toGMTString():请使用UTCString()方法代替。
- toUTCString():根据世界时,把Date对象转换为字符串。
- toLocalTimeString():根据本地时间格式,把Date对象的时间部分转换为字符串。
- toLocalDatetring():根据本地时间格式,把Date对象的日期部分转换为字符串。
- UTC():根据世界时返回1970年1月1日到指定日期的毫秒数。
- valueOf():返回Date对象的原始值。
其中,上述方法大致可以分为以下4类。
- getXXX方法:用于在Date对象中返回日期和时间值。
- setXXX方法:用于设置Date对象中的时间和日期值。
- toXXX方法:用于从Date对象中返回日期和时间的字符串值。
- parse和UTC方法:用于对Date字符串进行分析。
他们都是对Date对象本身使用,通常呗成为静态成员方法。具体语法如下:
//将参数表示的日期转换为整数,其值等于1970年1月1日00:00:00计算起的毫秒数 Date.parse(字符串参数) //将数值参数表示的日期转换为一个整数,其值等于1970年1月1日00:00:00计算起的毫秒数 Date.UTC(year,mouth,date,hour,minute,second)
下面用一个简单的例子,对Date对象中的关键方法进行测试:
<script type="text/javascript"> function startTime(){ var today = new Date(); //创建Date对象today var h = today.getHours(); //获得当前时间对象的小时 var m = today.getMinutes(); //获取当前时间对象的分钟数 var s = today.getSeconds(); //获取当前时间对象的秒数 //方法checkTime方法的调用,如果当前分钟数小于10,前面加0 m = checkTime(m); //方法checkTime方法的调用,如果当前秒数小于10,前面加0 s = checkTime(s); document.getElementById('txt').innerHTML = h + ":" + m + ":" + s; t = setTimeout('startTime()',500) //设置刷新频率 } function checkTime(i){ if(i<10){ i = "0" + i; } return i; } </script> <body onload="startTime()"> <div id = "txt"></div> </body>
运行程序,得到的结果类似于:
21:57:49
上面的程序中,先将Date对象实例化,获取当前时间,此时时间包含年、月、日、小时、分钟和秒,但是程序要获取的是一个仅仅包括小时、分钟和秒的简单时间,因此通过Date的一些方法,将前面不需要的时间去掉,从而得出正确的结果。