Référence de JavaScript 1.5 Core:Objets globaux:Date
Un article de MDC.
Sommaire |
[modifier] Résumé
Objet Core
L'objet Date permet de manipuler les dates et les heures.
[modifier] Création
Le construteur Date :
new Date();
new Date(millisecondes);
new Date(dateString);
new Date(num_année, num_mois, num_jour
[, num_heure, num_min, num_sec, num_ms]);
[modifier] Paramètres
-
millisecondes - Valeur entière correspondant au nombre de millisecondes (millièmes de seconde) depuis le 1er Janvier 1970 00:00:00 UTC.
-
dateString - Chaîne de caractères représentant la date. La chaîne doit être formatée d'une manière reconnue par parse.
-
num_année, num_mois, num_jour - Valeurs entières représentant des parties de la date. Le mois de l'année est défini de 0 à 11 avec 0=janvier et 11=décembre.
-
num_heure, num_min, num_sec, num_ms - Valeurs entières représentant la partie horaire de la date.
[modifier] Description
Si aucun paramètre n'est fourni, le constructeur crée un objet Date pour la date et l'heure courantes selon l'heure locale. Si vous fournissez certains paramètres, mais pas d'autres, les paramètres manquants auront pour valeur 0. Dans le cas où vous en fournissez certains, vous devez au moins fournir l'année, le mois et le jour. Vous pouvez omettre les heures, les minutes, les secondes et les millisecondes.
La date est mesurée en millisecondes depuis le 01 janvier 1970 UTC à minuit. Un jour contient 86 400 000 millisecondes. L'étendue de définition d'un objet Date est de -100 000 000 jours à 100 000 000 jours par rapport au 01 janvier 1970 UTC.
L'objet Date se comporte de la même manière quelle que soit la plateforme.
L'objet Date fournit un certain nombre de méthodes UTC (universelles), ainsi que des méthodes d'heure locale. Le temps universel coordonné UTC, parfois abusivement appelée l'Heure de Greenwich (GMT), se rapporte au temps défini par la norme de temps civil international. L'heure locale est celle connue de l'ordinateur où JavaScript est exécuté.
Pour la compatibilité avec les calculs de saut de millénaire (autrement dit, pour tenir compte de l'année 2000), il faut toujours préciser l'année au complet ; par exemple, utilisez 1998, pas 98. Pour vous aider dans l'utilisation d'années complètes, JavaScript fournit les méthodes getFullYear, setFullYear, getUTCFullYear et setUTCFullYear.
L'exemple suivant calcule le temps qui s'est écoulé entre tempsA et tempsB, en millisecondes.
tempsA = new Date(); // Quelques instructions effectuant des opérations ici. tempsB = new Date(); differenceDeTemps = tempsB - tempsA;
[modifier] Propriétés
- constructor : spécifie la fonction créant le prototype d'un objet.
- prototype : permet l'ajout de propriétés à un objet
Date.
[modifier] Méthodes statiques
- now : renvoie la valeur numérique correspondant à l'heure courante.
- parse : analyse une chaîne contenant la représentation d'une date, et renvoie le nombre de millisecondes depuis le 1er janvier 1970, 00:00:00, heure locale.
- UTC : accepte les mêmes paramètres que la forme longue du constructeur, et renvoie le nombre de millisecondes d'un objet
Datedepuis le 1er janvier 1970, 00:00:00, temps universel.
[modifier] Méthodes
- getDate : renvoie le jour du mois pour la date spécifiée selon l'heure locale.
- getDay : renvoie le jour de la semaine pour la date spécifiée selon l'heure locale.
- getFullYear : renvoie l'année pour la date spécifiée selon l'heure locale.
- getHours : renvoie l'heure pour la date spécifiée selon l'heure locale.
- getMilliseconds : renvoie les millièmes de secondes pour la date spécifiée selon l'heure locale.
- getMinutes : renvoie les minutes pour la date spécifiée selon l'heure locale.
- getMonth : renvoie le mois pour la date spécifiée selon l'heure locale.
- getSeconds : renvoie les secondes pour la date spécifiée selon l'heure locale.
- getTime : renvoie la valeur numérique correspondant à la date spécifiée selon le temps universel.
- getTimezoneOffset : renvoie le décalage de fuseau horaire en minutes pour l'heure locale courante.
- getUTCDate : renvoie le jour (date) du mois pour la date spécifiée selon le temps universel.
- getUTCDay : renvoie le jour de la semaine pour la date spécifiée selon le temps universel.
- getUTCFullYear : renvoie l'année pour la date spécifiée selon le temps universel.
- getUTCHours : renvoie les heures pour la date spécifiée selon le temps universel.
- getUTCMilliseconds : renvoie les millièmes de seconde pour la date spécifiée selon le temps universel.
- getUTCMinutes : renvoie les minutes pour la date spécifiée selon le temps universel.
- getUTCMonth : renvoie le mois pour la date spécifiée selon le temps universel.
- getUTCSeconds : renvoie les secondes pour la date spécifiée selon le temps universel.
- getYear Déprécié : renvoie (l'année-1900) pour la date spécifiée selon l'heure locale. Utilisez plutôt getFullYear.
- setDate : définit le jour du mois pour la date spécifiée selon l'heure locale.
- setFullYear : définit l'année complète pour la date spécifiée selon l'heure locale.
- setHours : définit les heures pour la date spécifiée selon l'heure locale.
- setMilliseconds : définit les millièmes de seconde pour la date spécifiée selon l'heure locale.
- setMinutes : définit les minutes pour la date spécifiée selon l'heure locale.
- setMonth : définit le mois pour la date spécifiée selon l'heure locale.
- setSeconds : définit les secondes pour la date spécifiée selon l'heure locale.
- setTime : définit la valeur de l'objet
Dateselon l'heure locale. - setUTCDate : définit le jour du mois pour la date spécifiée selon le temps universel.
- setUTCFullYear : définit l'année complète pour la date spécifiée selon le temps universel.
- setUTCHours : définit les heures pour la date spécifiée selon le temps universel.
- setUTCMilliseconds : définit les millièmes de seconde pour la date spécifiée selon le temps universel.
- setUTCMinutes : définit les minutes pour la date spécifiée selon le temps universel.
- setUTCMonth : définit le mois pour la date spécifié selon le temps universel.
- setUTCSeconds : définit les secondes pour la date spécifiée selon le temps universel.
- setYear Déprécié : définit l'année-1900 pour une date spécifiée selon l'heure locale. Utilisez plutôt setFullYear.
- toGMTString Déprécié : convertit une date en une chaîne, en utilisant les conventions Internet GMT. Utilisez plutôt toUTCString.
- toLocaleString : convertit une date en une chaîne, en utilisant les conventions locales courantes. Remplace la méthode Object.toLocaleString.
- toLocaleDateString : renvoie la partie « date » de l'objet
Datesous la forme d'une chaîne, en utilisant les conventions locales courantes. - toLocaleTimeString : renvoie la partie « heure » de l'objet
Datesous la forme d'une chaîne, en utilisant les conventions locales courantes. - toSource : renvoie une définition littérale d'objet représentant l'objet
Datespécifié ; cette valeur peut être utilisée pour créer un nouvel objet. Remplace la méthode Object.toSource. - toString : renvoie une chaîne représenant l'objet
Datespécifié. Remplace la méthode Object.toString. - toUTCString : convertit une date en une chaîne, en utilisant les conventions du temps universel.
- valueOf : renvoie la valeur primitive d'un objet
Date. Remplace la méthode Object.valueOf.
Par ailleurs, cet objet hérite des méthodes watch et unwatch de Object.
[modifier] Exemples
[modifier] Exemple : différentes manières d'assigner des dates
Les exemples qui suivent montrent différentes manières d'assigner des dates :
today = new Date();
birthday = new Date("December 17, 1995 03:24:00");
birthday = new Date(1995,11,17);
birthday = new Date(1995,11,17,3,24,0);
[modifier] Exemple : calcul de temps écoulé
Les exemples suivants montrent comment déterminer le temps écoulé entre deux dates :
// utilisations de méthodes statiques var debut = Date.now(); // l'évènement dont vous voulez mesurer la durée se place ici : faireQuelqueChoseDeLong(); var fin = Date.now(); var intervalle = fin - debut; // temps en millisecondes
// si vous avez des objets Date var debut = new Date(); // l'évènement dont vous voulez mesurer la durée se place ici : faireQuelqueChoseDeLong() var fin = new Date(); var intervalle = fin.getTime() - debut.getTime(); // temps en millisecondes