Date(日期)对象可以使用Date()构造器来创建。
首先介绍一下Date 对象
创建一个日期对象:
它没有参数,返回的数值就是当前的日期。下面的表格显示了日期构造器的有效输入:
[list]
[*]无参数的构造函数
[/list]
返回当前的日期和时间
[list]
[*]new Date("month dd,yyyy hh:mm:ss");
[/list]
month:用英文表示月份名称,从January到December
mth:用整数表示月份,从(1月)到11(12月)
dd:表示一个月中的第几天,从1到31
yyyy:四位数表示的年份
hh:小时数,从0(午夜)到23(晚11点)
mm:分钟数,从0到59的整数
ss:秒数,从0到59的整数
输入的是表单的字符串 “月 日,年 小时:分钟:秒”
[list]
[*]new Date(yyyy,mth,dd);
[/list]
参数是年份,月,日
[list]
[*]new Date(yyyy,mth,dd,hh,mm,ss);
[/list]
参数是年份,月,日,小时,分钟,秒
还有两种构造方式:
[list]
[*]new Date("month dd,yyyy");
[/list]
[list]
[*]new Date(ms);
[/list]
需要注意这一种形式,参数表示的是需要创建的时间和GMT时间1970年1月1日之间相差的毫秒数。
示例:
[b]上面的各种创建形式都表示2006 年1月12日这一天。[/b]
[b]这里作点补充:月份是从0开始的,比如一月份=0,二月份=1,三月份=3等等。[/b]
从上面可以看出创建一个日期对象是相对地简单,以下的表格是一系列的函数可以用于改变或者访问这些对象的属性:
[list]
[*]日期访问方法
[/list]
[b]getYear()[/b]
返回年份的最后两位数字
[b]getMonth()[/b]
返回年份中的第几月(0到11)
[b]getDate()[/b]
返回月份中的第几日(1到31)
[b]getDay()[/b]
返回星期中的第几天 (0到6)
[b]getTimezoneOffset()[/b]
返回当地时间与格林尼治天文台平均时间的差别
[b]getHours()[/b]
返回一天中的时针点数(0到23)
[b]getMinutes()[/b]
返回分钟 (0..59)
[b]getSeconds()[/b]
返回时间的秒 (0到59)
[b]getTime()[/b]
返回自从公元1970年1月1日的毫秒数
这里注意:IE浏览器的一些版本返回Timezoneoffset数值是用错误的符号,比如用”-”代替”+”等等。
示例:显示当前日期 按照YYYY-MM-DD格式显示
[list]
[*]日期设置方法
[/list]
[b]setDate() [/b]
设置每月中的第几天(从0到30)
[b]setHours()[/b]
设置小时(从0到23)
[b]setMinutes()[/b]
设置分钟(从0到59)
[b]setMonth()[/b]
设置月份(从0到11)
[b]setSeconds() [/b]
设置秒数(从0到59)
[b]setTime()[/b]
设置时间(从公元以来的毫秒数)
[b]setYear()[/b]
设置年份
[list]
[*]其它的日期方法
[/list]
[b]parse [/b]
转化日期字符串为自从公元以来的毫秒数,比如Date.parse(“date string”)
[b]toString()[/b]
Sat Jun 2 16:08:24 UTC+0800 2001
[b]toGMTString() [/b]
Sat, 2 Jun 2001 08:08:24 UTC
[b]toLocaleString()[/b]
2001年6月2日 16:08:24
所有的这些函数引用于独立的日期对象。如果你具有深厚的Java编程背景,那么你可以将它们认为是Date类的一些公共的方法而已。
下面给出一个典型的例子来设置日期对象到当前时间加1年:
实际上,parse函数是Date对象的一个方法,而不是一个独立的日期变量,如果使用Java术语,它就称为Date类的一个静态方法。这个正是我们为什么使用Date.pase()而不使用somedate.parse()的原因啦。
首先介绍一下Date 对象
创建一个日期对象:
var objDate=new Date([arguments list]);
它没有参数,返回的数值就是当前的日期。下面的表格显示了日期构造器的有效输入:
[list]
[*]无参数的构造函数
[/list]
var today = new Date();
返回当前的日期和时间
[list]
[*]new Date("month dd,yyyy hh:mm:ss");
[/list]
month:用英文表示月份名称,从January到December
mth:用整数表示月份,从(1月)到11(12月)
dd:表示一个月中的第几天,从1到31
yyyy:四位数表示的年份
hh:小时数,从0(午夜)到23(晚11点)
mm:分钟数,从0到59的整数
ss:秒数,从0到59的整数
var newyear = new Date("December 31, 1998 23:59:59");
输入的是表单的字符串 “月 日,年 小时:分钟:秒”
[list]
[*]new Date(yyyy,mth,dd);
[/list]
var bday = new Date(75, 1, 16);
参数是年份,月,日
[list]
[*]new Date(yyyy,mth,dd,hh,mm,ss);
[/list]
var bday = new Date(75, 1, 16, 12, 0, 0);
参数是年份,月,日,小时,分钟,秒
还有两种构造方式:
[list]
[*]new Date("month dd,yyyy");
[/list]
[list]
[*]new Date(ms);
[/list]
需要注意这一种形式,参数表示的是需要创建的时间和GMT时间1970年1月1日之间相差的毫秒数。
示例:
new Date("January 12,2006 22:19:35");
new Date("January 12,2006");
new Date(2006,0,12,22,19,35);
new Date(2006,0,12);
new Date(1137075575000);
[b]上面的各种创建形式都表示2006 年1月12日这一天。[/b]
[b]这里作点补充:月份是从0开始的,比如一月份=0,二月份=1,三月份=3等等。[/b]
从上面可以看出创建一个日期对象是相对地简单,以下的表格是一系列的函数可以用于改变或者访问这些对象的属性:
[list]
[*]日期访问方法
[/list]
[b]getYear()[/b]
返回年份的最后两位数字
[b]getMonth()[/b]
返回年份中的第几月(0到11)
[b]getDate()[/b]
返回月份中的第几日(1到31)
[b]getDay()[/b]
返回星期中的第几天 (0到6)
[b]getTimezoneOffset()[/b]
返回当地时间与格林尼治天文台平均时间的差别
[b]getHours()[/b]
返回一天中的时针点数(0到23)
[b]getMinutes()[/b]
返回分钟 (0..59)
[b]getSeconds()[/b]
返回时间的秒 (0到59)
[b]getTime()[/b]
返回自从公元1970年1月1日的毫秒数
这里注意:IE浏览器的一些版本返回Timezoneoffset数值是用错误的符号,比如用”-”代替”+”等等。
示例:显示当前日期 按照YYYY-MM-DD格式显示
<script type="text/javascript">
function showDate(){
var today = new Date();
var day = today.getDate();
var month = today.getMonth() + 1;
var year = today.getYear();
var date = year + "-" + month + "-" + day;
document.getElementById('currentDate').value = date;
}
</script>
<input type="text" name="currentDate" id="currentDate" onclick="showDate()">
[list]
[*]日期设置方法
[/list]
[b]setDate() [/b]
设置每月中的第几天(从0到30)
[b]setHours()[/b]
设置小时(从0到23)
[b]setMinutes()[/b]
设置分钟(从0到59)
[b]setMonth()[/b]
设置月份(从0到11)
[b]setSeconds() [/b]
设置秒数(从0到59)
[b]setTime()[/b]
设置时间(从公元以来的毫秒数)
[b]setYear()[/b]
设置年份
[list]
[*]其它的日期方法
[/list]
[b]parse [/b]
转化日期字符串为自从公元以来的毫秒数,比如Date.parse(“date string”)
[b]toString()[/b]
Sat Jun 2 16:08:24 UTC+0800 2001
[b]toGMTString() [/b]
Sat, 2 Jun 2001 08:08:24 UTC
[b]toLocaleString()[/b]
2001年6月2日 16:08:24
所有的这些函数引用于独立的日期对象。如果你具有深厚的Java编程背景,那么你可以将它们认为是Date类的一些公共的方法而已。
下面给出一个典型的例子来设置日期对象到当前时间加1年:
var nextYear = new Date(); // 初始化日期对象
nextyear.setYear(nextYear.getYear() + 1); // 增加1年
实际上,parse函数是Date对象的一个方法,而不是一个独立的日期变量,如果使用Java术语,它就称为Date类的一个静态方法。这个正是我们为什么使用Date.pase()而不使用somedate.parse()的原因啦。