
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 :
| Constructeur | Description |
|---|---|
| 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 :
| Format | Description |
|---|---|
| jj/mm/aaaa | Spécifie le jour, le mois et l’année sous forme de 4 chiffres |
| jj/mm/aaaa hh:mm:ss | Spé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éthode | Description |
|---|---|
| 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 :
// Instanciation de la classe Date
var dateSyncro = new Date();
// Synchronisation avec le serveur.
dateSyncro.setDate( <?php echo time(); ?> );
</script>



