JavaScript Date 对象创建与常用方法详解
本文详细介绍JavaScript中Date对象的创建语法,涵盖字符串、数值及多参数形式。解析月份、年份等参数范围,并列举获取与设置时间的方法,如getDate、getMonth及setFullYear,同时说明UTC与本地时间的区别,帮助开发者高效处理日期时间。
Date 对象概述与创建语法
JavaScript 中的 Date 对象专门用于处理日期和时间相关的操作。
创建 Date 对象的基本语法如下:
var myDate=new Date()
如果不传入参数,Date 对象会自动将当前的系统日期和时间作为初始值。
在创建 Date 对象时,支持以下5种参数传递形式:
代码如下:
new Date("month dd,yyyy hh:mm:ss");
new Date("month dd,yyyy");
new Date(yyyy,mth,dd,hh,mm,ss);
new Date(yyyy,mth,dd);
new Date(ms); 需特别注意最后一种形式,其中的参数代表目标时间与 GMT 时间 1970 年 1 月 1 日午夜之间相差的毫秒数。各参数的具体含义如下:
month:使用英文表示的月份名称,取值范围为 January 到 December。
mth:使用整数表示月份,取值范围为 0 到 11(分别对应 1 月到 12 月)。
dd:表示一个月中的第几天,取值范围为 1 到 31。
yyyy:使用四位数表示的年份。
hh:表示小时数,取值范围为 0(午夜)到 23(晚上 11 点)。
mm:表示分钟数,取值范围为 0 到 59 的整数。
ss:表示秒数,取值范围为 0 到 59 的整数。
ms:表示毫秒数,必须为大于等于 0 的整数。
例如:
代码如下:
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); 获取日期与时间的方法
Date() 构造函数返回当日的日期和时间。
getDate() 方法从 Date 对象返回一个月中的某一天,取值范围为 1 到 31。
getDay() 方法从 Date 对象返回一周中的某一天,取值范围为 0(周日)到 6(周六)。
getMonth() 方法从 Date 对象返回月份,取值范围为 0 到 11。
getFullYear() 方法从 Date 对象以四位数字格式返回年份。
getYear() 方法已不推荐,建议使用 getFullYear() 方法代替。
getHours() 方法返回 Date 对象的小时数,取值范围为 0 到 23。
getMinutes() 方法返回 Date 对象的分钟数,取值范围为 0 到 59。
getSeconds() 方法返回 Date 对象的秒数,取值范围为 0 到 59。
getMilliseconds() 方法返回 Date 对象的毫秒数,取值范围为 0 到 999。
getTime() 方法返回从 1970 年 1 月 1 日至今的毫秒数。
getTimezoneOffset() 方法返回本地时间与格林威治标准时间 (GMT) 之间的分钟差。
getUTCDate() 方法根据世界时从 Date 对象返回月中的一天,取值范围为 1 到 31。
getUTCDay() 方法根据世界时从 Date 对象返回周中的一天,取值范围为 0 到 6。
getUTCMonth() 方法根据世界时从 Date 对象返回月份,取值范围为 0 到 11。
getUTCFullYear() 方法根据世界时从 Date 对象返回四位数的年份。
getUTCHours() 方法根据世界时返回 Date 对象的小时,取值范围为 0 到 23。
getUTCMinutes() 方法根据世界时返回 Date 对象的分钟,取值范围为 0 到 59。
getUTCSeconds() 方法根据世界时返回 Date 对象的秒钟,取值范围为 0 到 59。
getUTCMilliseconds() 方法根据世界时返回 Date 对象的毫秒,取值范围为 0 到 999。
设置日期与时间的方法
parse() 方法返回从 1970 年 1 月 1 日午夜到指定日期字符串的毫秒数。
setDate() 方法设置 Date 对象中月的某一天,取值范围为 1 到 31。
setMonth() 方法设置 Date 对象中的月份,取值范围为 0 到 11。
setFullYear() 方法设置 Date 对象中的年份,使用四位数字表示。
setYear() 方法已不推荐,建议使用 setFullYear() 方法代替。
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() 方法已不推荐,建议使用 toUTCString() 方法代替。
toUTCString() 方法根据世界时将 Date 对象转换为字符串。
toLocaleString() 方法根据本地时间格式将 Date 对象转换为字符串。
toLocaleTimeString() 方法根据本地时间格式将 Date 对象的时间部分转换为字符串。
toLocaleDateString() 方法根据本地时间格式将 Date 对象的日期部分转换为字符串。
UTC() 方法根据世界时返回从 1997 年 1 月 1 日到指定日期的毫秒数。
valueOf() 方法返回 Date 对象的原始值。
//var objDate=new Date([arguments list]);
什么时候该用JS构造器:与工厂模式、字面量的选择对比
2026-11-05 16:18:22
推荐几款轻量级JS照片墙开源库及对比
2026-11-05 15:56:19
JavaScript递归写法有哪些常见陷阱及避免方法
2026-11-05 14:53:38
JS数组浅拷贝与深拷贝怎么选?场景与方法总结
2026-11-05 14:41:02
p5.js 中 setup() 和 draw() 函数的执行机制详解
2026-11-05 12:32:38
