Date.prototype.setUTCHours()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Date 实例的 setUTCHours() 方法用于根据世界协调时更改日期对象的小时、分钟、秒或毫秒。

尝试一下

const event = new Date("August 19, 1975 23:15:30 GMT-3:00");

console.log(event.toUTCString());
// Expected output: "Wed, 20 Aug 1975 02:15:30 GMT"

console.log(event.getUTCHours());
// Expected output: 2

event.setUTCHours(23);

console.log(event.toUTCString());
// Expected output: "Wed, 20 Aug 1975 23:15:30 GMT"

语法

js
setUTCHours(hoursValue)
setUTCHours(hoursValue, minutesValue)
setUTCHours(hoursValue, minutesValue, secondsValue)
setUTCHours(hoursValue, minutesValue, secondsValue, msValue)

参数

hoursValue

0 到 23 之间的整数,表示小时数。

minutesValue 可选

0 到 59 之间的整数,表示分钟数。

secondsValue 可选

0 到 59 之间的整数,代表秒数。如果指定了 secondsValue,则必须同时指定 minutesValue

msValue 可选

0 到 999 之间的整数,表示毫秒数。如果指定了 msValue,则必须同时指定 minutesValuesecondsValue

返回值

该方法会原地修改 Date 对象,并返回其新的时间戳。如果参数为 NaN(或其他会被强制转换NaN 的值,例如 undefined),则日期会被设置为无效日期,并返回 NaN

描述

如果你未指定 minutesValuesecondsValuemsValue 参数,那么将使用 getUTCMinutes()getUTCSeconds()getUTCMilliseconds() 方法返回的值。

如果你指定的参数超出了预期范围,setUTCHours() 会尝试相应地更新 Date 对象中的日期信息。例如,如果你将 secondsValue 设置为 100,分钟数将增加 1(minutesValue + 1),而秒数将变为 40。

示例

使用 setUTCHours()

js
const theBigDay = new Date();
theBigDay.setUTCHours(8);

规范

Specification
ECMAScript® 2025 Language Specification
# sec-date.prototype.setutchours

浏览器兼容性

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
setUTCHours

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

参见