JavaScript : Gestion du temps

Affichage de la date brute :

document.write (Date())

affiche : Tue Oct 30 00:25:18 2001

Tandis que si on déclare une nouvelle instance de Date() :

document.write (new Date())

L'affichage va être cette fois : Tue Oct 30 00:28:09 UTC+0100 2001

L'idéal est d'attribuer une variable-objet à une nouvelle instance de la date et heure actuelle :

En effet, par exemple, pour extraire le mois, nul besoin d'extraire des parties de chaînes : la méthode getMonth supplée à cette tâche, mais la déclaration des variables est obligatoire :

La ligne suivante ne donne pas d'erreur, mais affiche "undefined" :

document.write (Date().getMonth)

Ces lignes suivantes sont presque correctes :

var Aujourdhui = Date();
document.write (Aujourdhui.getMonth())

Mais on a une erreur de compilation. En effet, on peut effectivement bien déclarer la variable Aujourdhui = Date(), mais ensuite on ne peut pas appeler la méthode getMonth. Ca ne marche pas.

C'est uniquement ces lignes de code qui sont parfaites. Le new est absolument indispensable

var Aujourdhui = new Date();
document.write (Aujourdhui.getMonth())

Attention à bien mettre les parenthèses vides après getMonth(), sinon, on n'a pas d'erreur de compilation mais il affiche "native code". Je ne sais pas ce que c'est.

Liste non exhaustive des méthodes les plus utilisées concernat les dates et heures :

var Aujourdhui = new Date();
document.write (Aujourdhui) // Tue Oct 30 00:28:09 UTC+0100 2001
document.write (Aujourdhui.getMonth()) // Numéro du mois (1-12)
document.write (Aujourdhui.getFullYear()) // Année sur 4 chiffres
document.write (Aujourdhui.getDay()) // Le numéro du jour de la semaine (1=Lundi)
document.write (Aujourdhui.getDate()) // le quantième du mois
document.write (Aujourdhui.getHours()) // L'heure
document.write (Aujourdhui.getMilliseconds()) // Les millisecondes (0-999)
document.write (Aujourdhui.getMinutes()) // Les minutes
document.write (Aujourdhui.getSeconds()) // Les secondes
document.write (Aujourdhui.getTime()) //Nombre de millisecondes écoulées depuis le 1er janvier 1970 à minuit

Toutes ces fonctions peuvent être précédées de UTC pour obtenir les mêmes infos mais en GMT (getUTCMinutes par exemple)

document.write (Aujourdhui.getTimezoneOffset()) // Différence en minutes entre le temps GMT et l'heure locale (Genève : -60)