Date : méthode setYear()
Obsolète
Évitez d'utiliser cette fonctionnalité dans de nouveaux projets.
The getYear() and setYear() methods use a truncated number instead of the actual year number, known as a year 2000 problem.
Cette fonctionnalité peut être candidate à la suppression des standards web ou des navigateurs.>
La méthode setYear() des instances de Date définit l'année pour une date définie selon l'heure locale.
Cependant, la façon dont la méthode héritée setYear() définit les valeurs d'année diffère de celle de la méthode préférée setFullYear() — et dans certains cas, diffère aussi de la façon dont new Date() et Date.parse() définissent les valeurs d'année. Plus précisément, pour des nombres à deux chiffres, comme 22 et 61 :
setYear()interprète tout nombre à deux chiffres comme un décalage par rapport à1900; ainsidate.setYear(22)résulte en la valeur d'année étant définie à1922, etdate.setYear(61)résulte en la valeur d'année étant définie à1961. (En revanche, tandis quenew Date(61, 1)résulte également en la valeur d'année étant définie à1961,new Date("2/1/22")résulte en la valeur d'année étant définie à2022; et de même pourDate.parse()).setFullYear()n'effectue aucune interprétation particulière mais utilise la valeur littérale à deux chiffres telle quelle pour définir l'année ; ainsi,date.setFullYear(61)résulte en la valeur d'année étant définie à0061, etdate.setFullYear(22)résulte en la valeur d'année étant définie à0022.
En raison de ces différences de comportement, il ne faut plus utiliser la méthode héritée setYear(), mais plutôt la méthode préférée setFullYear().
Syntaxe
setYear(yearValue)
Paramètres
yearValue-
Un entier.
Valeur de retour
Modifie l'objet Date en place et retourne son nouveau timestamp. Si un paramètre vaut NaN (ou d'autres valeurs qui sont contrainte en NaN, comme undefined), la date est définie sur Date invalide et NaN est retourné.
Description
Si yearValue est un nombre entre 0 et 99 (inclus), alors l'année pour dateObj est fixée à 1900 + yearValue. Sinon, l'année pour dateObj est fixée à yearValue.
Exemples
>Utiliser la méthode setYear()
Les deux premières instructions définissent l'année 1996. La troisième définit l'année 2000.
const leGrandJour = new Date();
leGrandJour.setYear(96);
leGrandJour.setYear(1996);
leGrandJour.setYear(2000);
Spécifications
| Spécification |
|---|
| ECMAScript® 2027 Language Specification> # sec-date.prototype.setyear> |
Compatibilité des navigateurs
Voir aussi
- Prothèse d'émulation de
Date.prototype.setYeardanscore-js(angl.) - La méthode
Date.prototype.getFullYear() - La méthode
Date.prototype.getUTCFullYear() - La méthode
Date.prototype.setFullYear() - La méthode
Date.prototype.setUTCFullYear()