Le Tutoriel de JavaScript Date
1. ECMAScript Date
Date est un type de données qui est contruit dans le langage Javascript. Il est une classe pour créer des objets qui représente la date et le temps (Date & time).
Le standard ECMAScript requérit Date qu'elle puisse représent n'importe quelle date et quel temps, avec une précision de quelques millisecondes, dans un délai de 100 millions de jours avant ou après le 1/1/1970. Il s’agit d’un champ de plus ou moins 273785 ans, donc JavaScript peut représenter la date et l’heure jusqu’à l’année 275755.
En informatique, 12h le 1er janvier 1970 est un moment privilégié. Il est utilisé pour commencer à compter le temps. Ce temps spécial s'appelle epoch (Computer Age).
Voir plus sur le concept de Locale.
- Khái niệm Locale trong khoa học máy tính
- Sử dụng Locale trong NodeJS
Voir aussi la liste des fuseaux horaires par pays :
2. Les méthodes de Date
getDate()
La méthode getDate() renvoie la date du mois de l'objet Date de Locale présent. Particulièrement, elle renvoie une nombre entier (integer) qui se trouve dans le champ [1-31].
getDate-example.js
let date = new Date("December 25, 2017 23:15:00");
var day = date.getDate();
console.log(day); // 25
getDay()
La méthode getDate() renvoie la date de la semaine du l'objet Date par Locale présent. Plus précisément, elle renvoie un nombre entier (integer) situé dans le champ [0-6]. 0 correspond à dimanche, 1 correspond à lundi, ...
getDay-example.js
let date = new Date("December 25, 2017 11:15:00");// Monday
var day = date.getDay();
console.log(day); // 1
getFullYear()
La méthode getFullYear() renvoie l'année (year) de l'objet Date par Locale présent. Spécialement, elle renvoie un nombre entier, par exemple 2017.
getFullYear-example.js
let date = new Date("December 25, 2017 11:15:00");// Monday
var year = date.getFullYear();
console.log(year); // 2017
getHours()
La méthode getHours() renvoie l'heure de l'obet Date par son Locale présent. Elle renvoie un nombre entier (integer) qui se trouve dans le champ [0-23].
getHours-example.js
let date = new Date("December 25, 2017 22:10:00");
let hour = date.getHours();
console.log(hour); // 22
getMilliseconds()
La méthode getMilliseconds() renvoie mili second de l'objet Date par Locale présent. Spécialement, elle renvoie un nombre entier (integer) qui se trouve dans le champ [0-999].
getMilliseconds-example.js
let now = new Date();
console.log(now);// Ex: 2018-11-25T05:52:20.490Z
console.log("getMilliseconds() : " + now.getMilliseconds()); // 490
getMinutes()
La méthode getMinutes() renvoie (minute) de l'objet Date par Locale présent. Spécialement, elle renvoie un nombre entier (integer) qui se trouve dans le champ [0-59].
getMinutes-example.js
let now = new Date();
console.log(now);// Ex: 2018-11-25T05:58:20.178Z
console.log("getMinutes() : " + now.getMinutes()); // 58
getMonth()
La méthode getMonth() renvoie le mois (month) de l'objet Date par Locale présent. Spécialement, elle renvoie un nombre entier (integer) qui se trouve dans le champ [0-11], 0 correspond au janvier (January), 1 correspond au février (February),..
getMonth-example.js
let now = new Date();
console.log(now);// Ex: 2018-11-25T05:58:20.178Z
let month = now.getMonth(); // 10
console.log(month); // 10
getSeconds()
La méthode getSeconds() renvoie la seconde (second) de l'objet Date par Locale présent. Spécialement, elle renvoie un nombre entier (integer) qui se trouve dans le champ [0-59].
getSeconds-example.js
let now = new Date();
console.log(now);// Ex: 2018-11-25T06:06:24.211Z
console.log("getSeconds() : " + now.getSeconds()); // 24
getTime()
La méthode getTime() renvoie un période de temps en mili secondes de 01/01/1970 00:00:00:000 jusqu'à heure qui représente par l'objet Date.
getTime-example.js
let now = new Date();
console.log(now);// Ex: 2018-11-25T06:14:59.213Z
console.log("getTime() : " + now.getTime()); // 1543126499213
getTimezoneOffset()
La méthode getTimezoneOffset() renvoie le fuseau horaire (compté par minute) pour Locale présent.
Le fuseau horaire (time-zone) dépend au Locale, par exemple, le fuseau horaire du Vietnam est UTC+07:00 tandis que celui de la Russie s'étend largement sur 11 fuseaux horaires.
Votre ordinateur peut sélectionner n’importe quel paramètre Locale. Ensuite, l'horloge de l'ordinateur affichera l'heure dans ces paramètres Locale. La méthode getTimezoneOffset() renvoie le fuseau horaire correspondant au paramètre Locale que vous utilisez.
getTimezoneOffset:
- Vietnam: UTC+07:00 ==> -420
- Japan: UTC+09:00 ==> -540
getTimezoneOffset-example.js
// Vietnam: UTC+07:00
let now = new Date();
let timezoneOffset = now.getTimezoneOffset();
console.log(timezoneOffset); // -420
getUTCDate()
La méthode getUTCDate() renvoie le mois de l'objet Date par Universal Time (Temps Universel). Spécifiquement, il retourne un entier (integer) de [1-31].
getUTCDate-example.js
// This example test in Locale: Vietnam UTC+7:00
let date = new Date("December 25, 2017 01:15:00");
let day = date.getDate();
console.log(day); // 25 (Test in Vietnam UTC+7:00)
let utcDay = date.getUTCDate();
console.log(utcDay); // 24 (UTC)
getUTCDay()
La méthode getUTCDay() renvoie la date de la semaine de l'objet Date par Universal Time (Temps Universel). Spécifiquement, il retourne un entier (integer) de [0-6]. 0 correspond au dimanche, 1 correspond au lundi, ...
getUTCDay-example.js
// This example test in Locale: Vietnam UTC+7:00
let date = new Date("December 25, 2017 01:15:00"); // Monday
let day = date.getDay();
console.log(day); // 1
let utcDay = date.getUTCDay();
console.log(utcDay); // 0
getUTCFullYear()
Phương thức getUTCFullYear() renvoie l'année (year) de l'objet Date par Universal Time (Temps Universel). Spécifiquement, il retourne un entier (integer), par exemple 2017.
getUTCFullYear-example.js
// This example test in Locale: Vietnam UTC+7:00
let date = new Date("January 01, 2019 01:15:00");
var year = date.getFullYear();
console.log(year); // 2019
var utcYear = date.getUTCFullYear();
console.log(utcYear); // 2018
getUTCHours()
La méthode getHours() renvoie l'heure de l'objet Date par Universal Time (Temps Universel). Spécifiquement, il retourne un entier (integer) de [0-23].
getUTCHours-example.js
// This example test in Locale: Vietnam UTC+7:00
let now = new Date();
console.log(now);// Ex: 2018-11-25T07:29:59.575Z
let hour = now.getHours();
console.log(hour); // 14
let utcHour = now.getUTCHours();
console.log(utcHour); // 7
getUTCMinutes()
Phương thức getUTCMinutes() renvoie la minute de l'objet Date par Universal Time (Temps Universel). Spécifiquement, il retourne un entier (integer) de [0-59].
getUTCMinutes-example.js
// This example test in Locale: Vietnam UTC+7:00
let now = new Date();
console.log(now);// Ex: 2018-11-25T07:35:06.442Z
console.log("getUTCMinutes() : " + now.getUTCMinutes()); // 35
getUTCMilliseconds()
La méthode getUTCMilliseconds() renvoie mili seconde de l'objet Date par Universal Time (Temps Universel). Spécifiquement, il retourne un entier (integer) de [0-999].
getUTCMilliseconds-example.js
// This example test in Locale: Vietnam UTC+7:00
let now = new Date();
console.log(now);// Ex: 2018-11-25T07:39:03.222Z
console.log("getUTCMilliseconds() : " + now.getUTCMilliseconds()); // 222
getUTCMonth()
La méthode getUTCMonth() renvoie le mois (month) de l'objet Date par Universal Time (Temps Universel). Spécifiquement, il retourne un entier (integer) de [0-11], 0 correspond au janvier (January), 1 correspond au février (February),..
getUTCMonth-example.js
// This example test in Locale: Vietnam UTC+7:00
let date = new Date("January 01, 2019 01:15:00");
console.log(date);// 2018-12-31T18:15:00.000Z
// January 2019 (Vietnam)
let month = date.getMonth(); // 0
console.log(month); // 0
// December 2018 (UTC)
let utcMonth = date.getUTCMonth(); // 11
console.log(utcMonth); // 11
getUTCSeconds()
La méthode getUTCSeconds() renvoie la seconde de l'objet Date par Universal Time (Temps Universel). Spécifiquement, il retourne un entier (integer) de [0-59].
getUTCSeconds-example.js
// This example test in Locale: Vietnam UTC+7:00
let now = new Date();
console.log(now);// Ex: 2018-11-25T06:06:24.211Z
console.log("getUTCSeconds() : " + now.getUTCSeconds()); // 24
setDate(dayValue)
La méthode setDate(dayValue) définit la valeur de date d'un mois de l'objet Date par Locale présent. Spécifiquement, il retourne un entier (integer) de [1-31].
OK, une situation!! Supposons que vous avez un objet Date qui représente 25/02/2017 (Le mois de février 2017 n'a que 28 jours). Vous définit la valeur 31 pour "jour du mois" de cet objet Date là, qu'est-ce qu'il se passe? Le résultat est que votre objet Date représentera le jour 03/03/2017.
setDate-example.js
let date = new Date("February 25, 2017 23:15:00"); // 25/02/2017
date.setDate(18);
console.log(date); // 2017-02-18T16:15:00.000Z
// ??
date.setDate(31);
console.log(date); // 2017-03-03T16:15:00.000Z
setFullYear(yearValue[, monthValue[, dayValue]])
La méthode setFullYear(...) définit des valeur de l'année, du mois de l'objet Date par le Locale courant.
Des paramètres :
- yearValue: Un nombre entier, par exemple 2018.
- monthValue: Un nombre entier dans la rangée [0-11], 0 correspond au janvier (January), 1 correspond au février (February),...
- dayValue: Un nombre entier dans la rangée [1-31], représente le jour du mois.
setFullYear-example.js
let date = new Date();
console.log(date);// Ex: 2017-02-25T16:15:00.000Z
date.setFullYear(2015, 3, 19);
console.log(date); // 2018-12-19T16:15:00.000Z
date.setFullYear(2014, 10);
console.log(date); // 2018-12-25T16:15:00.000Z
date.setFullYear(2013);
console.log(date); // 2019-12-25T16:15:00.000Z
setMonth(monthValue[, dayValue])
La méthode setMonth(...) définit les valeurs du mois, du jour de l'objet Date par Locale présent.
Des paramètres :
- monthValue: Un nombre entier dans le champs [0-11], 0 correspond au janvier (January), 1 correspond au février (February),...
- dayValue: Un nombre entier dans le champs [1-31], représente le jour du mois
setMonth-example.js
let date = new Date();
console.log(date);// Ex: 2018-11-25T17:42:01.751Z
date.setMonth(3, 19);// Month, day of month
console.log(date); // 2018-04-18T17:42:01.751Z
date.setMonth(10); // Month
console.log(date); // 2018-11-18T17:42:01.751Z
setHours(hoursValue[, minutesValue[, secondsValue[, msValue]]])
La méthode setHours(..) définit les valeur de temps, de minute, de miliseconde de l'objet Date par Locale présent.
Des paramètres :
- hoursValue: Un nombre entier allant de [0-23].
- minutesValue: Un nombre entier allant de [0-59].
- secondsValue: Un nombre entier allant de [0-59].
- msValue: Un nombre entier allant de [0-999].
setHours-example.js
let date = new Date();
console.log(date);// Ex: 2018-11-25T17:36:18.955Z
date.setHours(22, 11, 03, 555); // hours, minutes, seconds, milliseconds
console.log(date); // 2018-11-26T15:11:03.555Z
date.setHours(13, 10);// hours, minutes
console.log(date); // 2018-11-26T06:10:03.555Z
setMinutes(minutesValue[, secondsValue[, msValue]])
La méthode setMinutes(..) définit les valeurs minute, seconde et milliseconde de l’objet Date dans les paramètres Locale courant.
Des paramètres :
- minutesValue: Un nombre entier dans le champs de [0-59].
- secondsValue: Un nombre entier dans le champs de [0-59].
- msValue: Un nombre entier dans le champs de [0-999].
setSeconds(secondsValue[, msValue])
La méthode setSeconds(..) définit les valeurs seconde et milliseconde de l’objet Date dans les paramètres Locale courant.
Des paramètres :
- secondsValue: Un nombre entier allant de [0-59].
- msValue: Un nombre entier allant de [0-999].
setMilliseconds(millisecondsValue)
La méthode setMilliseconds(msValue) définit les valeurs milliseconde de l’objet Date dans les paramètres Locale courant. Le paramètre est un entier compris entre [0-999].
setTime(timeValue)
La méthode setTime(timeValue) permet au Date de représenter une nouvelle heure alors que timeValue est une période calculée en millisecondes à partir du 01/01/1970 00:00:00:000 jusqu'à cette heure.
setTime-example.js
var date = new Date( "Aug 28, 2008 23:30:00" );
date.setTime( 5000000 );
console.log( date ); // 1970-01-01T01:23:20.000Z
toDateString()
La méthode toDateString() renvoie une chaine (String) qui représente la date de l'objet Date que les gens peuvent lire.
toDateString-example.js
let date = new Date( );
var str = date.toDateString();
console.log(str); // Thu Nov 29 2018
toTimeString()
La méthode toTimeString() renvoie la chaine (String) qui représente le temps (time) de l'objet Date, que les gens peuvent lire.
toTimeString-example.js
var dateobject = new Date(1993, 6, 28, 14, 39, 7);
console.log( dateobject.toTimeString() ); // 14:39:07 GMT+0700 (GMT+07:00)
toString()
La méthode toString() renvoie la chaine (String) qui représente le temps (time) de l'objet Date, que les gens peuvent lire.
toString-example.js
// This example test in Locale: Vietnam UTC+7:00
var dateobject = new Date(1993, 6, 28, 14, 39, 7);
console.log( dateobject.toString() ); // Wed Jul 28 1993 14:39:07 GMT+0700 (GMT+07:00)
toUTCString()
La méthode toUTCString() renvoie la chaine (String) qui représente le temps (time) de l'objet Date par Universal Time, que les gens peuvent lire.
toUTCString-example.js
// This example test in Locale: Vietnam UTC+7:00
var dateobject = new Date(1993, 6, 28, 14, 39, 7);
console.log( dateobject.toString() ); // Wed Jul 28 1993 14:39:07 GMT+0700 (GMT+07:00)
console.log( dateobject.toUTCString() ); // Wed, 28 Jul 1993 07:39:07 GMT
toLocaleDateString([locales][, options])
La méthode toLocaleDateString([locales][, options]) renvoie la chaine (String) qui représente le temps (time) de l'objet Date par des Locale et par les options dans des paramètres. Dans le cas où vous ne précisez pas Locale dans des paramètres, Locale courant sera utilisé.
Un exemple avec la méthode toLocaleDateString(..) exécute sur le navigateur.
toLocaleDateString-example.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>toLocaleDateString()</title>
<script>
var date = new Date(Date.UTC(2012, 11, 20, 3, 0, 0));
var options = { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' };
console.log(date.toLocaleDateString('de-DE', options));
// expected output: Donnerstag, 20. Dezember 2012
console.log(date.toLocaleDateString('ar-EG', options));
// expected output: الخميس، ٢٠ ديسمبر، ٢٠١٢
console.log(date.toLocaleDateString('ko-KR', options));
// expected output: 2012년 12월 20일 목요일
</script>
</head>
<body>
Show informations in the Console.
</body>
</html>
toLocaleTimeString( [locales][, options])
La méthode toLocaleTimeString([locales][, options]) renvoie une une chaîne représentant l'heure (time) de l'objet Date dans les paramètres Locale et les options dans des paramètres. Si vous ne spécifiez pas les paramètres Locale dans des paramètres, les paramètres Locale actuels seront utilisés.
toLocaleTimeString-example.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>toLocaleTimeString()</title>
<script>
var date = new Date(Date.UTC(2012, 11, 20, 3, 0, 0));
var options = {} // {hour: "2-digit", minute: "2-digit", second: "2-digit"}
console.log(date.toLocaleTimeString('de-DE', options));
// expected output: 10:00:00
console.log(date.toLocaleTimeString('ar-EG', options));
// expected output: ١٠:٠٠:٠٠ ص
console.log(date.toLocaleTimeString('ko-KR', options));
// expected output: 오전 10:00:00
</script>
</head>
<body>
Show informations in the Console.
</body>
</html>
toLocaleString([locales][, options])
La méthode toLocaleString([locales][, options]) renvoie une une chaîne représentant l'heure (time) de l'objet Date dans des paramètres Locale et les options dans des paramètres. Si vous ne spécifiez pas les paramètres Locale dans des paramètres, les paramètres Locale actuels seront utilisés.
- https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString
toLocaleString-example.html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>toLocaleString()</title>
<script>
var date = new Date(Date.UTC(2012, 11, 20, 3, 20, 59));
// { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric',
// hour: "2-digit", minute: "2-digit", second: "2-digit"}
var options = {}; // Default options
console.log(date.toLocaleString('de-DE', options));
// expected output: 20.12.2012, 10:20:59
console.log(date.toLocaleString('ar-EG', options));
// expected output: ٢٠/١٢/٢٠١٢ ١٠:٢٠:٥٩ ص
console.log(date.toLocaleString('ko-KR', options));
// expected output: 2012. 12. 20. 오전 10:20:59
</script>
</head>
<body>
Show informations in the Console.
</body>
</html>
Remarque : Les méthodes toLocaleDateString(..), toLocaleTimeString(..), toLocaleString(..) ne fonctionnent pas comme prévu sur l'environnement NodeJS, cette question a été discutée sur GitHub :
Tutoriels de programmation ECMAScript, Javascript
- Introduction à Javascript et ECMAScript
- Démarrage rapide avec Javascript
- Boîte de dialogue Alert, Confirm, Prompt en Javascript
- Démarrage rapide avec JavaScript
- Variables dans JavaScript
- Opérations sur les bits
- Les Tableaux (Array) en JavaScript
- Boucles dans JavaScript
- Le Tutoriel de JavaScript Function
- Le Tutoriel de JavaScript Number
- Le Tutoriel de JavaScript Boolean
- Le Tutoriel de JavaScript String
- Le Tutoriel de instruction JavaScript if/else
- Le Tutoriel de instruction JavaScript switch
- Tutoriel de gestion des erreurs JavaScript
- Le Tutoriel de JavaScript Date
- Le Tutoriel de JavaScript Module
- L'histoire des modules en JavaScript
- Fonctions setTimeout et setInterval dans JavaScript
- Le Tutoriel de Javascript Form Validation
- Le Tutoriel de JavaScript Web Cookie
- Mot clé Void dans JavaScript
- Classes et objets dans JavaScript
- Techniques de simulation classe et héritage en JavaScript
- Héritage et polymorphisme dans JavaScript
- Comprendre Duck Typing dans JavaScript
- Le Tutoriel de JavaScript Symbol
- Le Tutoriel de JavaScript Set Collection
- Le Tutoriel de JavaScript Map Collection
- Comprendre JavaScript Iterable et Iterator
- Expression régulière en JavaScript
- Le Tutoriel de JavaScript Promise, Async Await
- Le Tutoriel de Javascript Window
- Le Tutoriel de Javascript Console
- Le Tutoriel de Javascript Screen
- Le Tutoriel de Javascript Navigator
- Le Tutoriel de Javascript Geolocation API
- Le Tutoriel de Javascript Location
- Le Tutoriel de Javascript History API
- Le Tutoriel de Javascript Statusbar
- Le Tutoriel de Javascript Locationbar
- Le Tutoriel de Javascript Scrollbars
- Le Tutoriel de Javascript Menubar
- Le Tutoriel de Javascript JSON
- La gestion des événements en JavaScript
- Le Tutoriel de Javascript MouseEvent
- Le Tutoriel de Javascript WheelEvent
- Le Tutoriel de Javascript KeyboardEvent
- Le Tutoriel de Javascript FocusEvent
- Le Tutoriel de Javascript InputEvent
- Le Tutoriel de Javascript ChangeEvent
- Le Tutoriel de Javascript DragEvent
- Le Tutoriel de Javascript HashChangeEvent
- Le Tutoriel de Javascript URL Encoding
- Le Tutoriel de Javascript FileReader
- Le Tutoriel de Javascript XMLHttpRequest
- Le Tutoriel de Javascript Fetch API
- Analyser XML en Javascript avec DOMParser
- Introduction à Javascript HTML5 Canvas API
- Mettre en évidence le code avec la bibliothèque Javascript de SyntaxHighlighter
- Que sont les polyfills en science de la programmation?
Show More