Date.UTC

Date.UTC

Date.UTC() 方法接受的参数同日期构造函数接受最多参数时一样,返回从1970-1-1 00:00:00 UTC到指定日期的的毫秒数。

语法

Date.UTC(year, month[, day[, hour[, minute[, second[, millisecond]]]]])

参数

year1900 年后的某一年份。

返回值

Date从1970年1月1日00:00:00开始,表示给定对象的毫秒数的世界时间。

描述

UTC 方法接受以逗号隔开的日期参数,返回1970-1-1 00:00:00 UTC到指定的日期之间的毫秒数。

你应该指定一个完整格式的年份,如 1998。如果年份被指定为 0 到 99 之间,则该方法会将年份转换为 20 世纪的一个年份(即 1990 + year),例如,指定为 95, 则年份为 1995。

UTC 方法与 Date 有两点不同:

  • Date.UTC 方法使用协调世界时代替本地时间。

  • Date.UTC 方法返回一个时间数值,而不是一个日期对象。

如果有一个指定的参数超出其合理范围,则 UTC 方法会通过更新其他参数直到该参数在合理范围内。例如,为月份指定 15,则年份将会加 1,然后月份将会使用 3。

由于 UTCDate(日期对象)的一个静态方法,所以应该在 Date 上直接调用,就像 Date.UTC(),而不要把它作为创建的日期对象的方法。

例子

Using Date.UTC()

下面的语句使用 UTC 时间代替本地时间创建了一个日期对象。

var utcDate = new Date(Date.UTC(96, 11, 1, 0, 0, 0)

规格

SpecificationStatusComment
ECMAScript Latest Draft (ECMA-262)The definition of 'Date.UTC' in that specification.Living Standard
ECMAScript 2015 (6th Edition, ECMA-262)The definition of 'Date.UTC' in that specification.Standard
ECMAScript 5.1 (ECMA-262)The definition of 'Date.UTC' in that specification.Standard
ECMAScript 1st Edition (ECMA-262)StandardInitial definition. Implemented in JavaScript 1.0.

浏览器兼容性

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic Support(Yes)(Yes)(Yes)(Yes)(Yes)(Yes)

FeatureAndroidChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
Basic Support(Yes)(Yes)(Yes)(Yes)(Yes)(Yes)(Yes)

Compatibility notes

Date.UTC with fewer than two arguments

When providing less than two arguments to Date.UTC, NaN is returned. This behavior is specified in ECMAScript 2017. Engines who weren't supporting this behavior, have been updated (see 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