javascript引用类型之Date类型

创建日期对象

在javascript中,可以使用Date()构造函数来创建日期对象,如:

var date=new Date();
当没有向构造函数传递日期参数时,将创建一个拥有当前日期和时间的对象。
当然,如果想根据特定的日期和时间创建日期对象,也是可以的,只需要将能表示日期的参数传入构造函数即可。

Date()构造函数能够接受的常用的日期格式有:

  • ”月/日/年“,如2/27/2014;
  • ”英文月名 日,年“,如February 27,2014;
  • ”年,月,日,时,分,秒,毫秒“,如2014,1,27,11,22,22

下面分别以上面的格式来创建一个日期对象:

var date1=new Date("2/27/2014"); 
alert(date1); //Thu Feb 27 2014 00:00:00 GMT+0800
var date2=new Date("February 27,2014");
alert(date2); //Thu Feb 27 2014 00:00:00 GMT+0800
var date3=new Date(2014,1,27,11,24,0);
alert(date3); //Thu Feb 27 2014 11:24:00 GMT+0800
var date4=new Date(2014,1,27);
alert(date4); //Thu Feb 27 2014 00:00:00 GMT+0800
var date5=new Date("2014,1,27,11,24,0");
alert(date5); //Invalid Date
通过上面的例子,大家可能会注意到它们之间的区别:

第一,用前面两种方式创建日期对象时,必须以字符串的形式作为参数传入;而使用第三种方式创建时不能以字符串的形式传入,每个值都得当做单独的值传入。

第二,有一点必须特别注意,用第三种方式创建日期时,它的月份是从0开始的,即一月份对应的是0,依次类推;而前面两种方法,是正常的月份表示,即二月对应的就是2。

第三,使用第三种方式表示时,年月是必须的,而其他参数省略时,将以0表示。

注:前面两种方式与显示的调用Date.parse()方法将得到一致的结果;第三种方式与显示的调用Date.UTC()方法得到的结果一致。


继承的方法

Date类型也继承有toString()、toLocaleString()和valueOf()方法。调用这些方法所得到的值的格式会因为浏览器的不同而不同。具体的,自己可以尝试调用下。


日期格式化方法

Date类型还有一些专门用于将日期格式化为字符串的方法,如下:

  • toDateString()——以特定与实现的格式显示星期几、月、日、年;
  • toTimeString()——以特定于实现的格式显示时、分、秒、时区;
  • toLocaleDateString()——以特定于地区的格式显示星期几、月、日、年;
  • toLocaleTimeString()——以特定于现实的格式显示时、分、秒;
  • toUTCString()——以特定于显示的格式显示完整的UTC日期

上述方法可能相对不经常使用,所以不深入介绍。


日期/时间组件方法

方法说明
getTime()返回表示日期的毫秒数
setTime(毫秒)以毫秒数设置日期
getFullYear()返回四位数年份
getUTCFullYear()返回UTC日期的四位数年份
setFullYear(年)设置日期年份,参数必须是表示年份的4位数字
setUTCFullYear(年)设置UTC日期年份,参数必须是表示年份的4位数字
getMonth()返回日期中的月份,0~11
getUTCMonth()返回UCT日期中的月份,0~11
setMonth(月)设置日期的月份。如果超过11,则增加年份。
setUTCMonth(月)设置UTC日期的月份。如果超过11,则增加年份。
getDate()返回日期月份中的天数,1~31
getUTCDate()返回UTC日期月份中的天数,1~31
setDate(日)设置日期月份中的天数。如果值超出该月应有的天数,则增加月份。
setUTCDate(日)设置UTC日期月份中的天数。如果值超出该月应有的天数,则增加月份。
getDay()返回日期中的星期几,0表示星期天,6表示星期六
getUTCDay()返回UTC日期中的星期几,0表示星期天,6表示星期六
getHours()返回日期中的小时数,0~23
getUTCHours()返回UTC日期中的小时数,0~23
setHours(时)设置日期中的小时数,传入值超过23,则增加天数
setUTCHours(时)设置UTC日期中的小时数,传入值超过23,则增加天数
getMinutes()返回日期中的分钟数,0~59
getUTCMinutes()返回UTC日期中的分钟数,0~59
setMinutes(分)设置日期中的分钟数,传入的值超过59,则增加小时数
setUTCMinutes(分)设置UTC日期中的分钟数,传入的值超过59,则增加小时数
getSeconds()返回日期中的秒数,0~59
getUTCSeconds()返回UTC日期中的秒数,0~59
setSeconds(秒)设置日期中的毫秒数,传入值超过59,则增加分钟数
setUTCSeconds(秒)设置UTC日期中的毫秒数,传入值超过59,则增加分钟数
getMillseconds()返回日期中的毫秒数
getUTCMillseconds()返回UTC日期中的毫秒数
setMillseconds(毫秒)设置日期中的毫秒数
getTimezoneOffset()返回本地时间与UTC时间相差的分钟数。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值