此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。
Date.UTC()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
Date.UTC() 方法接受的参数同Date 构造函数接受最多参数时一样,但该前者会视它们为 UTC 时间,其返回从 1970 年 1 月 1 日 00:00:00 UTC 到指定时间的毫秒数。
In this article
尝试一下
const utcDate1 = new Date(Date.UTC(96, 1, 2, 3, 4, 5));const utcDate2 = new Date(Date.UTC(0, 0, 0, 0, 0, 0));console.log(utcDate1.toUTCString());// Expected output: "Fri, 02 Feb 1996 03:04:05 GMT"console.log(utcDate2.toUTCString());// Expected output: "Sun, 31 Dec 1899 00:00:00 GMT"语法
Date.UTC(year)Date.UTC(year, month)Date.UTC(year, month, day)Date.UTC(year, month, day, hour)Date.UTC(year, month, day, hour, minute)Date.UTC(year, month, day, hour, minute, second)Date.UTC(year, month, day, hour, minute, second, millisecond)参数
year一个表示年份的整数值。
从
0到99的值会被映射到1900至1999年。其他的值则代表实际的年份。参见示例。month可选0(一月)到11(十二月)之间的一个整数,表示月份。从 ECMAScript 2017 开始,如果忽略该值,则默认为0。(直到 ECMAScript 2016,month都是必须的参数。而从 ES2017 开始,它不再是必须的。)date可选1到31之间的一个整数,表示某月当中的第几天。如果忽略该值,则默认为1。hour可选0到23之间的一个整数,表示小时。如果忽略该值,则默认为0。minute可选0到59之间的一个整数,表示分钟。如果忽略该值,则默认为0。second可选0到59之间的一个整数,表示秒。如果忽略该值,则默认为0。millisecond可选0到999之间的一个整数,表示毫秒。如果忽略该值,则默认为0。
返回值
一个数字,表示从 1970 年 1 月 1 日 00:00:00 UTC 到给定时间的毫秒数。
描述
UTC() 方法接受以逗号隔开的时间参数,返回 1970 年 1 月 1 日 00:00:00 UTC 到指定的时间之间的毫秒数。
如果年份被指定为0 到99 之间,则该方法会将年份转换为 20 世纪的一个年份(即1900 + year),例如,指定为95,则年份为1995。
UTC() 方法与Date 构造函数有两点不同:
Date.UTC()方法使用协调世界时代替本地时间。Date.UTC()方法返回一个时间数值,而不是一个Date对象。
如果有一个指定的参数超出其合理范围,则 UTC 方法会通过更新其他参数直到该参数在合理范围内。例如,为月份指定15,则年份将会加1(year + 1),然后月份将会使用3。
示例
>使用 Date.UTC()
下面的语句使用 UTC 时间代替本地时间创建了一个Date 对象。
const utcDate = new Date(Date.UTC(2018, 11, 1, 0, 0, 0));规范
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-date.utc> |
浏览器兼容性
兼容性备注
少于两个参数的 Date.UTC()
当向Date.UTC() 提供少于两个的参数时,ECMAScript 2017 要求返回NaN。不支持此行为的引擎已被更新(参见bug 1050755、ecma-262 #642)。
Date.UTC();Date.UTC(1);// Safari: NaN// Chrome/Opera/V8: NaN// Firefox <54: non-NaN// Firefox 54+: NaN// IE: non-NaN// Edge: NaN