此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

Date.prototype.setHours()

基线 广泛可用

自 2015年7月 起,此特性已在主流浏览器中得到支持,可在大多数设备和浏览器版本中正常使用。

setHours() 方法根据本地时间为一个日期对象设置小时数,返回从 1970-01-01 00:00:00 UTC 到更新后的 日期 对象实例所表示时间的毫秒数。

尝试一下

const event = new Date("August 19, 1975 23:15:30");
event.setHours(20);

console.log(event);
// Expected output: "Tue Aug 19 1975 20:15:30 GMT+0200 (CEST)"
// Note: your timezone may vary

event.setHours(20, 21, 22);

console.log(event);
// Expected output: "Tue Aug 19 1975 20:21:22 GMT+0200 (CEST)"

语法

dateObj.setHours(hoursValue[, minutesValue[, secondsValue[, msValue]]])

JavaScript 1.3 版本之前

dateObj.setHours(hoursValue)

参数

hoursValue

一个 0 到 23 的整数,表示小时。

minutesValue

一个 0 到 59 的整数,表示分钟。

secondsValue

一个 0 到 59 的整数,表示秒数。如果指定了 secondsValue 参数,则必须同时指定 minutesValue 参数。

msValue

一个 0 到 999 的数字,表示微秒数,如果指定了 msValue 参数,则必须同时指定 minutesValuesecondsValue 参数。

描述

如果不指定 minutesValuesecondsValuemsValue 参数,则会使用getMinutes()getSeconds()getMilliseconds() 方法的返回值。

如果有一个参数超出了合理范围,setHours 会相应地更新日期对象中的日期信息。例如,如果为 secondsValue 指定了 100,则分钟会加 1,然后秒数使用 40。

示例

示例:使用 setHours 方法

js
var theBigDay = new Date();
theBigDay.setHours(7);

规范

规范
ECMAScript® 2027 Language Specification
# sec-date.prototype.sethours

浏览器兼容性

参见