recursal/MDN huggingface dataset:
Date.UTC()
==========

La méthode **`Date.UTC()`** accepte des paramètres similaires à ceux du constructeur `Date` et renvoie le nombre de millièmes de seconde depuis le 1er janvier 1970, 00:00:00, temps universel. Autrement dit, elle renvoie la date en UTC.

Exemple interactif
------------------

Syntaxe
-------


```js
Date.UTC(année[,mois[,jour[,heures[,minutes[,secondes[,ms]]]]]])
```

Paramètres
----------

`année`

Une année sur deux chiffres pour une année après 1900 (ex. 98 pour 1998) ou bien une année sur quatre chiffres (2018).

`mois`Facultatif

Un entier entre 0 (janvier) et 11 (décembre) représentant le mois.

**Note :** Cet argument est optionnel depuis ECMAScript 2017.

`jour`Facultatif

Un entier entre 1 et 31 représentant le jour du mois. La valeur par défaut vaut 1.

`heures`Facultatif

Paramètre optionnel, un entier entre 0 et 23 représentant les heures. La valeur par défaut vaut 0.

`minutes`Facultatif

Paramètre optionnel, un entier entre 0 et 59 représentant les minutes. La valeur par défaut vaut 0.

`secondes`Facultatif

Paramètre optionnel, un entier entre 0 et 59 représentant les secondes. La valeur par défaut vaut 0.

`ms`Facultatif

Paramètre optionnel, un entier entre 0 et 999 représentant les millièmes de seconde. La valeur par défaut vaut 0.

### Valeur de retour

Un nombre représentant le nombre de millisecondes écoulées entre la date indiquée et le premier janvier 1970 à minuit UTC.

Description
-----------

La méthode `UTC` prend des paramètres de date et d'heure séparés par des virgules et renvoie le nombre de millièmes de seconde entre le 1er janvier 1970, 00:00:00, temps universel et la date et l'heure spécifiées.

Il faut spécifier l'année entière pour le premier paramètre ; par exemple 1998. Si l'année spécifiée est entre 0 et 99, la méthode la convertira en une année du XXe siècle (1900 + année) ; par exemple si vous indiquez 95, l'année 1995 sera utilisée.

La méthode `UTC` diffère du constructeur `Date` pour deux raisons :

* `Date.UTC` utilise le temps universel plutôt que l'heure locale.
* `Date.UTC` renvoie une valeur temporelle sous la forme d'un nombre plutôt que de créer un objet `Date`.

Si un paramètre spécifié est en dehors des limites attendues, la méthode `UTC` met à jour les autres paramètres pour s'adapter à ce nombre. Par exemple, si vous utilisez 15 pour le mois, l'année sera incrémentée d'une unité (année + 1), et la valeur 3 (avril) sera utilisée pour le mois.

Comme `UTC` est une méthode statique de `Date`, on l'utilise toujours sous la forme `Date.UTC()` plutôt que comme une méthode d'un objet `Date` que vous auriez créé.

Exemples
--------

### Utiliser `Date.UTC()`

L'instruction qui suit crée un objet `Date` en utilisant l'heure UTC plutôt que l'heure locale :


```js
var utcDate = new Date(Date.UTC(96, 11, 1, 0, 0, 0));
```

Spécifications
--------------

| Specification |
| --- |
| ECMAScript Language Specification # sec-date.utc |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* `Date.parse()`
Date.prototype.setUTCMilliseconds()
===================================

La méthode **`setUTCMilliseconds()`** définit les millièmes de secondes pour la date, selon UTC.

Exemple interactif
------------------

Syntaxe
-------


```js
dateObj.setUTCMilliseconds(valeurMs);
```

### Paramètres

`valeurMs`

Un entier entre 0 et 999, représentant les millièmes de secondes.

### Valeur de retour

Le nombre de millisecondes écoulées entre le premier janvier 1970 minuit, UTC et la date mise à jour.

Description
-----------

Si le paramètre indiqué est en dehors des limites attendues, la date sera mise à jour en conséquence. Par exemple, si on utilise la valeur 1005, le nombre des secondes sera incrémenté de 1, et 5 sera utilisé pour les millièmes de secondes.

Exemples
--------

### Utiliser `setUTCMilliseconds()`


```js
var leGrandJour = new Date();
leGrandJour.setUTCMilliseconds(500);
```

Spécifications
--------------

| Specification |
| --- |
| ECMAScript Language Specification # sec-date.prototype.setutcmilliseconds |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* `Date.prototype.getUTCMilliseconds()`
* `Date.prototype.setMilliseconds()`
Date.prototype.toUTCString()
============================

La méthode **`toUTCString()`** convertit une date en une chaîne de caractères, selon le fuseau horaire UTC.

Exemple interactif
------------------

Syntaxe
-------


```js
dateObj.toUTCString();
```

### Valeur de retour

Une chaîne de caractères représentant la date indiquée selon le fuseau horaire UTC.

Description
-----------

La valeur renvoyée par `toUTCString()` est un texte au même format que celui renvoyé `Date.prototype.toString()` mais sans décalage de fuseau horaire (en UTC).

Avant ECMAScript 2018, le format de la valeur renvoyée pouvait varier selon les plateformes. La valeur la plus couramment renvoyée était une date formatée selon la RFC 1123, qui est une version mise à jour de la RFC 822.

Exemples
--------

### Utiliser `toUTCString()`


```js
var aujourdhui = new Date();
var UTCstring = aujourdhui.toUTCString();
// Mon, 03 Jul 2006 21:44:38 GMT
```

Spécifications
--------------

| Specification |
| --- |
| ECMAScript Language Specification # sec-date.prototype.toutcstring |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* `Date.prototype.toLocaleString()`
* `Date.prototype.toDateString()`
* `Date.prototype.toISOString()`
Date.prototype.setTime()
========================

La méthode **`setTime()`** met l'objet `Date` à jour par rapport au nombre de millisecondes depuis le 1 janvier 1970, 00:00:00 UTC.

Exemple interactif
------------------

Syntaxe
-------


```js
dateObj.setTime(valeurTemps);
```

### Paramètres

`valeurTemps`

Un entier représentant le nombre de millisecondes depuis le 1 janvier 1970, 00:00:00 UTC.

### Valeur de retour

Le nombre de millisecondes écoulées entre le premier janvier 1970 à minuit, UTC et la date mise à jour (ce qui correspond à la valeur de l'argument).

Description
-----------

La méthode `setTime()` est utilisée afin d'assigner une date à un autre objet `Date`.

Exemples
--------

### Utiliser `setTime()`


```js
var leGrandJour = new Date("July 1, 1999");
var pareilQueGrandJour = new Date();
pareilQueGrandJour.setTime(leGrandJour.getTime());
```

Spécifications
--------------

| Specification |
| --- |
| ECMAScript Language Specification # sec-date.prototype.settime |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* `Date.prototype.getTime()`
* `Date.prototype.setUTCHours()`
Date.prototype.getUTCMinutes()
==============================

La méthode **`getUTCMinutes()`** renvoie les minutes de la date renseignée, d'après UTC.

Exemple interactif
------------------

Syntaxe
-------


```js
dateObj.getUTCMinutes();
```

### Valeur de retour

Un entier entre 0 et 59 correspondant au nombre de minutes pour la date indiquée selon le temps universel.

Exemples
--------

### Utiliser `getUTCMinutes`

L'exemple suivant assigne les minutes de la date actuelle à la variable `minutes`.


```js
var aujourdhui = new Date();
var minutes = aujourdhui.getUTCMinutes();
```

Spécifications
--------------

| Specification |
| --- |
| ECMAScript Language Specification # sec-date.prototype.getutcminutes |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* `Date.prototype.getMinutes()`
* `Date.prototype.setUTCMinutes()`
Date.prototype.setMilliseconds()
================================

La méthode **`setMilliseconds()`** définit les millièmes de secondes pour la date, selon l'heure locale.

Exemple interactif
------------------

Syntaxe
-------


```js
dateObj.setMilliseconds(valeurMs);
```

### Paramètres

`valeurMs`

Un entier entre 0 et 999, représentant les millièmes de secondes.

### Valeur de retour

Le nombre de millisecondes écoulées entre le premier janvier 1970 minuit, UTC et la date mise à jour.

Description
-----------

Si vous indiquez un nombre en dehors des limites attendues, la date sera mise à jour en conséquence. Par exemple, si vous indiquez 1005, le nombre des secondes sera incrémenté de 1, et 5 sera utilisé pour les millièmes de secondes.

Exemples
--------

### Utiliser `setMilliseconds()`


```js
var leGrandJour = new Date();
leGrandJour.setMilliseconds(100);
```

Spécifications
--------------

| Specification |
| --- |
| ECMAScript Language Specification # sec-date.prototype.setmilliseconds |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* `Date.prototype.getMilliseconds()`
* `Date.prototype.setUTCMilliseconds()`
Date.prototype.setMinutes()
===========================

La méthode **`setMinutes()`** définit les minutes pour la date donnée, selon l'heure locale.

Exemple interactif
------------------

Syntaxe
-------


```js
dateObj.setMinutes(valeurMinutes[, valeurSecondes[, valeurMs]])
```

### Versions antérieures à JavaScript 1.3


```js
dateObj.setMinutes(valeurMinutes);
```

### Paramètres

`valeurMinutes`

Un entier entre 0 et 59, représentant les minutes.

`valeurSecondes`

Paramètre optionnel, un entier entre 0 et 59, représentant les secondes. Si `valeurSecondes` est utilisé, il faut également utiliser `valeurMinutes`.

`valeurMs`

Paramètre optionel, un nombre entre 0 et 999, représentant les millièmes de secondes. Si `valeurMs` est utilisé, il faut également utiliser `valeurMinutes` et `valeurSecondes`.

### Valeur de retour

Le nombre de millisecondes écoulées entre le premier janvier 1970 minuit, UTC et la date mise à jour.

Description
-----------

Si `valeurSecondes` et `valeurMs` ne sont pas indiquées, les valeurs renvoyées par les méthodes `getSeconds()` et `getMilliseconds()` seront utilisées.

Si un paramètre est en dehors des limites attendues, `setMinutes()` tentera de mettre à jour la date en conséquence. Par exemple, si on utilise la valeur 100 pour `valeurSecondes`, les minutes (`valeurMinutes`) seront incrémentées de 1 (`valeurMinutes` + 1), et 40 sera utilisé pour les secondes.

Exemples
--------

### Utiliser `setMinutes()`


```js
var leGrandJour = new Date();
leGrandJour.setMinutes(45);
```

Spécifications
--------------

| Specification |
| --- |
| ECMAScript Language Specification # sec-date.prototype.setminutes |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* `Date.prototype.getMinutes()`
* `Date.prototype.setUTCMinutes()`
Date.now()
==========

La méthode **`Date.now()`** renvoie le nombre de millisecondes écoulées depuis le 1er Janvier 1970 00:00:00 UTC.

Exemple interactif
------------------

Syntaxe
-------


```js
var tempsEnMs = Date.now();
```

### Valeur de retour

Le nombre de millisecondes écoulées depuis le premier janvier 1970 à minuit UTC.

Description
-----------

La méthode `now()` renvoie le nombre de millisecondes écoulées depuis le 1er janvier 1970 00:00:00 UTC sous forme d'un `Number` (nombre).

`now()` étant une méthode statique de `Date`, on utilisera toujours la forme `Date.now()`.

Prothèse d'émulation (*polyfill*)
---------------------------------

Cette méthode a été standardisée dans la 5e édition d'ECMA-262. Les moteurs JavaScript ne la supportant pas peuvent l'émuler de la façon suivante :


```js
if (!Date.now) {
  Date.now = function now() {
    return new Date().getTime();
  };
}
```

Précision temporelle réduite
----------------------------

Afin de protéger contre les attaques de minutage et d'identification, la précision de `new Date.now()` peut être arrondie en fonction des paramètres du navigateur. Pour Firefox, la préférence `privacy.reduceTimerPrecision` est activée par défaut et vaut, par défaut 20ms pour Firefox 59 et 2ms pour Firefox 60.


```js
// Précision temporelle réduite (2ms) pour Firefox 60
new Date().getTime();
// 1519211809934
// 1519211810362
// 1519211811670
// ...

// précision temporelle avec `privacy.resistFingerprinting` activé
new Date().getTime();
// 1519129853500
// 1519129858900
// 1519129864400
// ...
```


Pour Firefox, il est également possible d'activer `privacy.resistFingerprinting` auquel cas la précision sera 100ms ou la valeur de `privacy.resistFingerprinting.reduceTimerPrecision.microseconds` selon laquelle est plus grande.

Spécifications
--------------

| Specification |
| --- |
| ECMAScript Language Specification # sec-date.now |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* `window.performance.now` - renvoie des timestamps (horodatages) avec une précision supérieure à la milliseconde pour mesurer la performance des pages web.
* `console.time` / `console.timeEnd`
Date.prototype.getUTCMilliseconds()
===================================

La méthode **`getUTCMilliseconds()`** renvoie les millièmes de secondes pour la date renseignée selon UTC.

Exemple interactif
------------------

Syntaxe
-------


```js
dateObj.getUTCMilliseconds();
```

### Valeur de retour

Un entier entre 0 et 999 correspondant au nombre de millisecondes pour la date indiquée, selon le temps universel.

**Note :** Le résultat de cette méthode n'est pas le temps "Epoch". Si on veut obtenir le nombre de millisecondes depuis le premier janvier 1970, on utilisera la méthode `Date.prototype.getTime()`.

Exemples
--------

### Utiliser `getUTCMilliseconds()`

L'exemple suivant assigne les millièmes de secondes pour la date actuelle à la variable `ms`.


```js
var aujourdhui = new Date();
var ms = aujourdhui.getUTCMilliseconds();
```

Spécifications
--------------

| Specification |
| --- |
| ECMAScript Language Specification # sec-date.prototype.getutcmilliseconds |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* `Date.prototype.getMilliseconds()`
* `Date.prototype.setUTCMilliseconds()`
Date.prototype.getMonth()
=========================

La méthode **`getMonth()`** retourne le mois de la date renseignée d'après l'heure locale. La numérotation démarre à 0 (c'est-à-dire que 0 correspond au premier mois de l'année).

Exemple interactif
------------------

Syntaxe
-------


```js
dateObj.getMonth();
```

### Valeur de retour

Un entier entre 0 et 11 selon le mois de la date indiquée et d'après l'heure locale (0 correspond à janvier, 1 à février, et ainsi de suite).

Exemples
--------

### Utiliser `getMonth()`

La seconde instruction ci-dessous assigne la valeur 11 à la variable `mois`, d'après la valeur de l'objet `Date` `noel95`.


```js
var noel95 = new Date("December 25, 1995 23:15:00");
var mois = noel95.getMonth();

console.log(mois); //11
```


**Note :** Si besoin, on pourra récupérer le nom complet du mois (`"Janvier"` par exemple) en utilisant `Intl.DateTimeFormat()` avec un paramètre `options`. En utilisant cette méthode, il est plus simple d'internationaliser le site ou l'application :


```js
var options = { month: "long" };
console.log(new Intl.DateTimeFormat("en-US", options).format(noel95));
// December
console.log(new Intl.DateTimeFormat("de-DE", options).format(noel95));
// Dezember
```


Spécifications
--------------

| Specification |
| --- |
| ECMAScript Language Specification # sec-date.prototype.getmonth |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* `Date.prototype.getUTCMonth()`
* `Date.prototype.setMonth()`
Date.prototype.setUTCDate()
===========================

La méthode **`setUTCDate()`** définit le jour du mois pour la date, selon UTC.

Exemple interactif
------------------

Syntaxe
-------


```js
dateObj.setUTCDate(valeurJour);
```

### Paramètres

`valeurJour`

Un entier de 1 à 31, représentant un jour dans le mois.

### Valeur de retour

Le nombre de millisecondes écoulées entre le premier janvier 1970 minuit, UTC et la date mise à jour.

Description
-----------

Si le paramètre renseigné est en dehors des limites attendues, `setUTCDate()` tentera de mettre à jour la date en conséquence. Par exemple, si on utilise la valeur 40 pour `valeurJour`, et que le mois de la date est juin, le jour sera changé en 10 et le mois passera à juillet.

Exemples
--------

### Utiliser `setUTCDate()`


```js
var leGrandJour = new Date();
leGrandJour.setUTCDate(20);
```

Spécifications
--------------

| Specification |
| --- |
| ECMAScript Language Specification # sec-date.prototype.setutcdate |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* `Date.prototype.getUTCDate()`
* `Date.prototype.setDate()`
Date.prototype.setUTCHours()
============================

La méthode **`setUTCHours()`** définit les heures pour la date, selon UTC, et renvoie le nombre de millièmes de secondes écoulées entre le 1er janvier 1970 00:00:00 UTC et cette nouvelle date.

Exemple interactif
------------------

Syntaxe
-------


```js
dateObj.setUTCHours(valeurHeures[, valeurMinutes[, valeurSecondes[, valeurMs]]])
```

### Paramètres

`valeurHeures`

Un entier entre 0 et 23, représentant l'heure.

`valeurMinutes`

Paramètre optionnel, un entier entre 0 et 59, représentant les minutes.

`valeurSecondes`

Paramètre optionnel, un entier entre 0 et 59, représentant les secondes. Si le paramètre `valeurSecondes` est utilisé, le paramètre `valeurMinutes` devra également être renseigné.

`valeurMs`

Paramètre optionnel, un entier entre 0 et 999, représentant les millièmes de secondes. Si le paramètre `valeurMs` est utilisé, les paramètres `valeurMinutes` et `valeurSecondes` devront également être renseignés.

### Valeur de retour

Le nombre de millisecondes écoulées entre le premier janvier 1970 minuit, UTC et la date mise à jour.

Description
-----------

Si les paramètres `valeurMinutes`, `valeurSecondes` et `valeurMs` ne sont pas renseignés, les valeurs renvoyées par les méthodes `getUTCMinutes()`, `getUTCSeconds()`, et `getUTCMilliseconds()` seront utilisées.

Si un des paramètres renseignés est en dehors des limites attendues, `setUTCHours()` tentera de mettre à jour la date en conséquence. Par exemple, si on utilise la valeur 100 pour `valeurSecondes`, les minutes seront incrémentées de 1 (min + 1), et 40 sera utilisé pour les secondes.

Exemples
--------

### Utiliser `setUTCHours()`


```js
var leGrandJour = new Date();
leGrandJour.setUTCHours(8);
```

Spécifications
--------------

| Specification |
| --- |
| ECMAScript Language Specification # sec-date.prototype.setutchours |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* `Date.prototype.getUTCHours()`
* `Date.prototype.setHours()`
Date.prototype.getTime()
========================

La méthode **`getTime()`** renvoie la valeur numérique correspondant au temps pour la date renseignée, d'après le temps universel (c'est-à-dire relative à UTC, une mesure donnée par `getTime()` sera indépendante du fuseau horaire sur lequel on se trouve). Cette valeur numérique est le nombre de millisecondes écoulées depuis le premier janvier 1970 à minuit UTC.

Vous pouvez utiliser cette méthode pour vous affecter une date et un temps à une autre instance de `Date`. Cette méthode est fonctionnellement équivalente à la méthode `valueOf()`.

Exemple interactif
------------------

Syntaxe
-------


```js
dateObj.getTime();
```

### Valeur de retour

La valeur renvoyée par la méthode `getTime()` est le nombre de millièmes de secondes entre le 1 janvier 1970 à 00:00:00 UTC et la date indiquée.

Exemples
--------

### Utiliser `getTime()`

L'exemple qui suit assigne la valeur de `anniversaire` à `copie` :


```js
var anniversaire = new Date(1994, 11, 10); // 10 décembre 1994
var copie = new Date();
copie.setTime(anniversaire.getTime());
```

### Mesurer un temps d'exécution

Effectuer une soustration entre deux appels à `getTime()` donne la durée écoulée entre ces appels. On peut donc utiliser cette méthode afin de connaître la durée d'exécution de certaines opérations (voir également la méthode `Date.now()` qui peut permettre d'éviter d'instancier des objets intermédiaires).


```js
var fin, début;

début = new Date();
for (var i = 0; i < 1000; i++) {
  Math.sqrt(i);
}
fin = new Date();

console.log(
  "Durée de cette opération : " + (fin.getTime() - début.getTime()) + " msec",
);
```

Précision temporelle réduite
----------------------------

Afin de protéger contre les attaques de minutage et d'identification, la précision de `new Date().getTime()` peut être arrondie en fonction des paramètres du navigateur. Pour Firefox, la préférence `privacy.reduceTimerPrecision` est activée par défaut et vaut, par défaut 20µs pour Firefox 59 et 2ms pour Firefox 60.


```js
// Précision temporelle réduite (2ms) pour Firefox 60
new Date().getTime();
// 1519211809934
// 1519211810362
// 1519211811670
// ...

// précision temporelle avec `privacy.resistFingerprinting` activé
new Date().getTime();
// 1519129853500
// 1519129858900
// 1519129864400
// ...
```


Pour Firefox, il est également possible d'activer `privacy.resistFingerprinting` auquel cas la précision sera 100ms ou la valeur de `privacy.resistFingerprinting.reduceTimerPrecision.microseconds` selon laquelle est plus grande.

Spécifications
--------------

| Specification |
| --- |
| ECMAScript Language Specification # sec-date.prototype.gettime |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* `Date.prototype.setTime()`
* `Date.prototype.valueOf()`
* `Date.prototype.now()`
Date.prototype.getHours()
=========================

La méthode **`getHours()`** renvoie l'heure pour la date renseignée, d'après l'heure locale.

Exemple interactif
------------------

Syntaxe
-------


```js
dateObj.getHours();
```

### Valeur de retour

Un entier, compris entre 0 et 23 qui indique l'heure de la date indiquée selon l'heure locale.

Exemples
--------

### Utiliser `getHours()`

La seconde instruction ci-dessous assigne la valeur 23 à la variable `heure`, selon la valeur de l'objet `Date` `noel95`.


```js
var noel95 = new Date("December 25, 1995 23:15:00");
var heure = noel95.getHours();

console.log(heure); //23
```

Spécifications
--------------

| Specification |
| --- |
| ECMAScript Language Specification # sec-date.prototype.gethours |

Compatibilité des navigateurs
-----------------------------

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.

Voir aussi
----------

* `Date.prototype.getUTCHours()`
* `Date.prototype.setHours()`