Date.prototype.setUTCHours()

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2015 年 7 月⁩以来,各浏览器均已提供此特性。

setUTCHours() 方法用于更改 Date 实例的日期的小时、分钟、秒和/或毫秒,该更改根据通用时间进行。

试一试

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 对象中的日期信息。例如,如果使用 100 作为 secondsValue,分钟将增加 1(minutesValue + 1),秒将使用 40。

示例

使用 setUTCHours()

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

规范

规范
ECMAScript® 2026 语言规范
# sec-date.prototype.setutchours

浏览器兼容性

另见