# Date.setHours()

The setHours() method sets the hours for a specified date according to local time, and returns the number of milliseconds since January 1, 1970 00:00:00 UTC until the time represented by the updated D

```javascript
var 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)

```

## Syntax <a href="#syntax" id="syntax"></a>

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

#### Versions prior to JavaScript 1.3 <a href="#versions_prior_to_javascript_1.3" id="versions_prior_to_javascript_1.3"></a>

```javascript
dateObj.setHours(hoursValue)
```

#### Parameters <a href="#parameters" id="parameters"></a>

`hoursValue`Ideally, an integer between 0 and 23, representing the hour. If a value greater than 23 is provided, the datetime will be incremented by the extra hours.

`minutesValue`Optional. Ideally, an integer between 0 and 59, representing the minutes. If a value greater than 59 is provided, the datetime will be incremented by the extra minutes.

`secondsValue`Optional. Ideally, an integer between 0 and 59, representing the seconds. If a value greater than 59 is provided, the datetime will be incremented by the extra seconds. If you specify the `secondsValue` parameter, you must also specify the `minutesValue`.

`msValue`Optional. Ideally, a number between 0 and 999, representing the milliseconds. If a value greater than 999 is provided, the datetime will be incremented by the extra milliseconds. If you specify the `msValue` parameter, you must also specify the `minutesValue` and `secondsValue`.

**Return value**

The number of milliseconds between January 1, 1970 00:00:00 UTC and the updated date.

## Description

If you do not specify the `minutesValue`, `secondsValue`, and `msValue` parameters, the values returned from the [`getMinutes()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getMinutes), [`getSeconds()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getSeconds), and [`getMilliseconds()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getMilliseconds)methods are used.

If a parameter you specify is outside of the expected range, `setHours()` attempts to update the date information in the [`Date`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date) object accordingly. For example, if you use 100 for `secondsValue`, the minutes will be incremented by 1 (`minutesValue + 1`), and 40 will be used for seconds.

## Examples <a href="#examples" id="examples"></a>

#### Using `setHours()` <a href="#using_sethours" id="using_sethours"></a>

```javascript
var theBigDay = new Date();
theBigDay.setHours(7);
```

## References <a href="#references" id="references"></a>

{% embed url="<https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/setHours>" %}

## Contributors to this page <a href="#contributors-to-this-page" id="contributors-to-this-page"></a>

Uros Durdevic
