Cette page a été traduite à partir de l'anglais par la communauté. Vous pouvez contribuer en rejoignant la communauté francophone sur MDN Web Docs.

View in English Always switch to English

Date : méthode setYear()

Obsolète: Cette fonctionnalité n'est plus recommandée. Même si certains navigateurs la prennent encore en charge, elle a peut-être déjà été supprimée des standards du web, est en passe d'être supprimée ou n'est conservée qu'à des fins de compatibilité. Évitez de l'utiliser et mettez à jour le code existant si possible ; consultez le tableau de compatibilité au bas de cette page pour vous aider à prendre votre décision. Sachez que cette fonctionnalité peut cesser de fonctionner à tout moment.

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 ; ainsi date.setYear(22) résulte en la valeur d'année étant définie à 1922, et date.setYear(61) résulte en la valeur d'année étant définie à 1961. (En revanche, tandis que new 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 pour Date.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, et date.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

js
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.

js
const leGrandJour = new Date();

leGrandJour.setYear(96);
leGrandJour.setYear(1996);
leGrandJour.setYear(2000);

Spécifications

Specification
ECMAScript® 2026 Language Specification
# sec-date.prototype.setyear

Compatibilité des navigateurs

Voir aussi