Date.prototype.setHours()

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.

O método setHours() atribui as horas para uma data especificada de acordo com a hora local e retorna o número de milissegundos desde do dia 1 de Janeiro de 1970 00:00:00 UTC até o tempo representado pela instância Date atualizada.

Experimente

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)"

Sintaxe

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

Versões anteriores ao JavaScript 1.3

dateObj.setHours(hoursValue)

Parâmetros

hoursValue

Idealmente, um número inteiro entre 0 e 23, representando a hora. Se um valor maior que 23 for fornecido, a data e hora será incrementada pelas horas extras.

minutesValue

Opcional. Idealmente, um número inteiro entre 0 e 59, representando os minutos. Se um valor maior que 59 for fornecido, a data e hora será incrementada em minutos extras.

secondsValue

Opcional. Idealmente, um número inteiro entre 0 e 59, representando os segundos. Se um valor maior que 59 for fornecido, a data e hora será incrementada em segundos extras. Se você especificar o parâmetro secondsValue, também deverá especificar parâmetro minutesValue.

msValue

Opcional. Idealmente, um número entre 0 e 999, representando os milissegundos. Se um valor maior que 999 for fornecido, a data e hora será incrementada em milissegundos extras. Se você especificar o parâmetro msValue, você também deve especificar minutesValue e secondsValue.

Valor de retorno

O número de milissegundos entre dia 1 de Janeiro de 1970 00:00:00 UTC e a data atualizada.

Descrição

Se você não especifica os parâmetros minutesValue, secondsValue, e msValue, os valores retornados dos métodos getMinutes(), getSeconds(), e getMilliseconds() são usados.

Se um parâmetro que você especificar estiver fora do intervalo esperado, setHours() tenta atualizar as informações de data no objeto Date. Por exemplo, se você usa 100 para secondsValue, os minutos serão incrementados em 1 (minutesValue + 1), e 40 serão usados para os segundos.

Exemplos

Usando setHours()

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

Especificações

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

Compatibilidade com navegadores

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
setHours

Legend

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

Full support
Full support

Veja também