Auteur: Ludovic PATEY

Publié le 18 février 2008

Modifié le: 18 février 2008

Page d'accueil

La classe Date

Vous êtes ici : Accueil / Cours / Cours de Javascript / Progresser en Javascript

Nous allons maintenant apprendre à manipuler la classe Date. Attention : le Javascript s’exécutant du côté client, la date par défaut sera celle de son système d’exploitation et non celle du client. Faites donc attention avec la communications de dates vers le serveur.

Instanciation de la classe Date

Il existe plusieurs constructeurs de la classe Date :

ConstructeurDescription
new Date()La valeur de la date est celle du client.
new Date( String valeur )Instancie la date avec des valeurs sous forme d’une chaîne formattée
new Date( int année, int mois, int jour, [int heures, int minutes, int secondes[, int millisecondes]])Instancie la date avec des valeurs sous formes d’entiers

Lorsque les heures, minutes et secondes ne sont pas précisées, elles sont initialisées à 0.

Attention : une date représente le temps à un instant fixe. Les secondes n’augmentent pas au cours du script.

Les formats d’une date

Nous avons vu qu’il était possible d’instancier une date avec une chaîne formattée. Bien entendu, cette chaîne doit respecter des critères stricts. Voici les formats acceptés :

FormatDescription
jj/mm/aaaaSpécifie le jour, le mois et l’année sous forme de 4 chiffres
jj/mm/aaaa hh:mm:ssSpécifie le jour, le mois, l’année sous forme de 4 chiffres, les heures, les minutes et les secondes

Propriétés de la classe Date

Cette classe ne possède pas de propriété.

Méthodes de la classe Date

MéthodeDescription
int getDate()Retourne le jour du mois ( entre 1 et 31 )
int getDay()Retourne le jour de la semaine ( entre 0 et 6 ) au format anglais : 0 pour dimanche, 1 pour lundi.
int getFullYear()Retourne l’année sur 4 chiffres
int getHours()Retourne l’heure ( entre 0 et 23 )
int getMilliseconds()Retourne le nombre de millisecondes (entre 0 et 999
int getMinutes()Retourne le nombre de minutes ( entre 0 et 59 )
int getMonth()Retourne le numéro du mois ( entre 0 et 11 )
int getSeconds()Retourne le nombre de secondes ( entre 0 et 59 )
int getTime()Retourne le timestamp : le nombre de millisecondes depuis la date de la création d’UNIX ( le 1er janvier 1970 )
int getTimezoneOffset()Retourne le nombre de minutes de décalage entre l’heure locale et celle au méridien de Greenwich ( heure GMT )
int getYear()Retourne l’année sur 2 chiffres
int setDate( int )Spécifie le nouveau jour du mois ( entre 1 et 31 ) et retourne le timestamp
int setHours( int )Définit l’heure ( entre 0 et 23 ) et retourne le timestamp
int setMinutes( int )Définit le nombre de minutes ( entre 0 et 59 ) et retourne le timestamp
int setMonth( int )Définit le numéro du mois dans l’année ( entre 0 et 11 )
int setTime( int )Définit le nouveau timestamp : le nombre de millisecondes depuis la date de la création d’UNIX ( le 1er janvier 1970 )
String toGMTString()Retourne la date au format GMT. Exemple : Wed, 18 Jun 2008 15:18:49 GMT
String toLocaleString()Retourne la date au format local. Exemple : mercredi 18 juin 2008 17:20:20

Synchroniser la date avec celle du serveur

Il est préférable de maîtriser un langage côté serveur. Voici un exemple de script PHP qui, inséré dans la page, permet de synchroniser la date :

<script type="text/javascript">

// Instanciation de la classe Date
var dateSyncro = new Date();

// Synchronisation avec le serveur.
dateSyncro.setDate( <?php echo time(); ?> );
</script>

Commentaires

Auteur :

Message :