The Date.UTC()
method accepts parameters similar to the Date
constructor, but treats them as UTC. It returns the number of milliseconds since January 1, 1970, 00:00:00 UTC.
Date.UTC()
Try it
Syntax
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
-
Integer value representing the year.
Values from
0
to99
map to the years1900
to1999
. All other values are the actual year. See the example. -
month
Optional -
An integer between
0
(January) and11
(December) representing the month. Since ECMAScript 2017 it defaults to0
if omitted. (Up until ECMAScript 2016,month
was a required parameter. As of ES2017, it no longer is.) -
day
Optional -
An integer between
1
and31
representing the day of the month. If omitted, defaults to1
. -
hour
Optional -
An integer between
0
and23
representing the hours. If omitted, defaults to0
. -
minute
Optional -
An integer between
0
and59
representing the minutes. If omitted, defaults to0
. -
second
Optional -
An integer between
0
and59
representing the seconds. If omitted, defaults to0
. -
millisecond
Optional -
An integer between
0
and999
representing the milliseconds. If omitted, defaults to0
.
Return value
A number representing the number of milliseconds for the given date since January 1, 1970, 00:00:00, UTC.
Description
UTC()
takes comma-delimited date and time parameters and returns the number of milliseconds between January 1, 1970, 00:00:00, universal time and the specified date and time.
Years between 0
and 99
are converted to a year in the 20th century (1900 + year)
. For example, 95
is converted to the year 1995
.
The UTC()
method differs from the Date
constructor in two ways:
-
Date.UTC()
uses universal time instead of the local time. -
Date.UTC()
returns a time value as a number instead of creating aDate
object.
If a parameter is outside of the expected range, the UTC()
method updates the other parameters to accommodate the value. For example, if 15
is used for month
, the year will be incremented by 1 (year + 1)
and 3
will be used for the month.
UTC()
is a static method of Date
, so it's called as Date.UTC()
rather than as a method of a Date
instance.
Examples
Using Date.UTC()
The following statement creates a Date
object with the arguments treated as UTC instead of local:
let utcDate = new Date(Date.UTC(2018, 11, 1, 0, 0, 0));
Specifications
Specification |
---|
ECMAScript Language Specification # sec-date.utc |
Browser compatibility
Desktop | Mobile | Server | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | Deno | Node.js | |
UTC |
1
|
12
|
1
|
3
|
3
|
1
|
1
|
18
|
4
|
10.1
|
1
|
1.0
|
1.0
|
0.10.0
|
Compatibility notes
Date.UTC() with fewer than two arguments
When providing less than two arguments to Date.UTC()
, ECMAScript 2017 requires that NaN
is returned. Engines that 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
See also
© 2005–2022 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/UTC