codestory

Die Anleitung zu JavaScript Date

  1. ECMAScript Date
  2. Die Methode von Date

1. ECMAScript Date

Date ist ein Datentyp, das in der Sprache Javascript eingebaut. Es ist eine Klasse um die Objekte zur Vertretung des Datum und der Zeit zu erstellen.

Die Standard ECMAScript fordert das Objekt Date auf, um irgendein Datum und irgendeine Zeit, konkret in Milisekunden, innerhalb 100 Daten vor oder nach 1/1/1970 vertreten zu können. Das ist eine Bereich von +/- 273785 Jahren. Deshalb kann JavaScript das Datum und die Zeit bis zum Jahr 275755 vertreten.

In die Computer-wissenschaft ist 12h a.m 01-01-1970 eine besondere Zeitpunkt, die benutzt wird, um die Zeit zu zählen. Diese besondere Zeitpunkt wird epoch genannt. (als die Computer-Ära verstehen können)

Den Begriff Locale mehr sehen.
  • Khái niệm Locale trong khoa học máy tính
  • Sử dụng Locale trong NodeJS
Mehr sehen, die Liste der Zeitzone nach Ländern

2. Die Methode von Date

getDate()
Das Method getDate() gibt das Datum des Objekt Date nach momentan Locale zurück. Konkret gibt es ein Integer in den Raum [1-31] zurück
getDate-example.js
let date = new Date("December 25, 2017 23:15:00");

var day = date.getDate();

console.log(day); // 25
getDay()

Das Method getDate() gibt den Tag der Woche des Objekts Date nach momentan Locale zurück. Konkret ist das ein Integer im Raum [0-6]. 0 entspricht Sontag, 1 entspricht Montag, ...

getDay-example.js
let date = new Date("December 25, 2017 11:15:00");// Monday

var day = date.getDay();

console.log(day); // 1
getFullYear()
Das Method getFullYear() gibt das Jahr (year) des Objekts Date nach momentan Locale zurück. Konkret ist es ein Integer, z.B 2017.
getFullYear-example.js
let date = new Date("December 25, 2017 11:15:00");// Monday

var year = date.getFullYear();

console.log(year); // 2017
getHours()
Das Method getHours()gibt die Zeit des Objekt Date nach momentan Locale zurück. Konkret gibt es ein Integer im Raum [0-23] zurück
getHours-example.js
let date = new Date("December 25, 2017 22:10:00");

let hour = date.getHours();

console.log(hour); // 22
getMilliseconds()

Das Method getMilliseconds() gibt die Milisekunde des Objekt Date nach momentan Locale zurück. Konkret ist das ein Integer im Raum von [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()

Das Method getMinutes() gibt die Minute des Objekt Date nach momentan Locale zurück. Konkret ist das ein Integer im Raum vom [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()
Das Method getMonth() gibt den Monat des Objekt Date nach momentan Locale zurück. Konkret ist das ein Integer im Raum vom [0-11], 0 entspricht dem Januar (January), 1 entspricht dem Februar (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()

Das Method getSeconds() gibt die Sekunde (second) des Objekt Date nach momentan Locale zurück. Konkret ist das ein Integer im Raum vom [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()
Das Method getTime() gibt einen Zeitraum in die Milisekunden seit der Zeitpunkt von 01/01/1970 00:00:00:000 bis zum momentan durch Objekt Date zurück
getTime-example.js
let now = new Date();

console.log(now);// Ex: 2018-11-25T06:14:59.213Z

console.log("getTime() : " + now.getTime()); // 1543126499213
getTimezoneOffset()
Das Method getTimezoneOffset() gibt die Zeitzone (in die Minuten) für momentan Locale zurück.
Die Zeitzone (time-zone) hängt von Locale ab, z.B die Zeitzone vom Vietnam ist UTC+07:00. Inzwischen liegt der große Russland auf 11 Zeitzones.
Ihr Computer kann ein irgendeine Locale wählen. Dann zeigt die Uhr auf Computer die Zeit nach dieser Locale. Das Method getTimezoneOffset() wird die Zeitzone zurückgeben, die der benutzenden Locale entspricht.
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()

Das Method getUTCDate() gibt den Tag des Monat des Objekts Date nach Universal Time zurück. Konkret ist das ein Integer im Raum vom [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()

Das Method getUTCDay() gibt den Tag der Woche des Objekt Date nach Universal Time zurück. Konkret ist das ein Integer im Raum vom [0-6]. 0 entspricht dem Sontag, 1 entspricht dem Montag, ...

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()
Das Method getUTCFullYear() gibt das Jahr des Objekts Date nach Universal Time zurück. Konkret ist das ein Integer, z.B 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()

Das Method getHours() gibt die Zeit des Objekt Date nach Universal Time zurück. Konkret ist das ein Integer im Raum vom [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()

Das Method getUTCMinutes() gibt die Minute des Objekts Date nach Universal Time zurück. Konkret ist das ein Integer im Raum vom [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()

Das Method getUTCMilliseconds() gibt die Milisekunde des Objekt Date nach Universal Time zurück. Konkret ist das ein Integer im Raum vom [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()

Das Method getUTCMonth() gibt den Monat des Objekt Date nach Universal Time zurück. Konkret ist das ein Integer im Raum vom [0-11], 0 entspricht dem Januar, 1 entspricht dem Februar,..

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()

Das Method getUTCSeconds() gibt die Milisekunde des Objekt Date nach Universal Time zurück. Konkret ist das ein Integer im Raum vom [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)

Das Method setDate(dayValue) setzt die Wert Datum für das Objekt Date nach momentan Locale. Der Parameter ist ein Integer im Raum vom [1-31].

OK, das ist eine Situation!! Angenommen, Sie haben ein Objekt Date , das das Datum von 25/02/2017 vertritt ( February 2017 hat nur 28 Tage). Sie setzt die Wert von 31 für "der Tag vom Monat" des Objekt Date, was passieren wird? Das Ergebnis ist, dass Ihr Objekt Date das Datum vom 03/03/2017 vertritt.
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]])

Das Method setFullYear(...) setzt die Wert vom Jahr, Monat, Tag für das Objekt Date nach momentan Locale.

Die Parameter :
  • yearValue: ein Integer, z.B 2018.
  • monthValue: ein Integer im Raum vom [0-11], 0 entspricht dem Januar (January), 1 entspricht dem Februar (February),...
  • dayValue: ein Integer im Raum vom [1-31], der den Tag des Monat vertritt.
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])

Das Method setMonth(...) setzt die Wert vom Monat, Tag für das Objekt Date nach momentan Locale.

Die Parameter :
  • monthValue: ein Integer im Raum vom [0-11], 0 entspricht dem Januar, 1 entspricht dem Februar (February),...
  • dayValue: ein Integer im Raum vom [1-31], der den Tag des Monat vertritt..
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]]])

Das Method setHours(..) setzt die Wert von Stunde, Minute, Sekunde, Milisekunde für das Objekt Date nach momentan Locale.

Die Parameter:

  • hoursValue: ein Integer im Raum vom [0-23].
  • minutesValue: ein Integer im Raum vom [0-59].
  • secondsValue: ein Integer im Raum vom [0-59].
  • msValue: ein Integer im Raum vom [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]])

Das Method setMinutes(..) setzt die Wert von Minute, Sekunde, Milisekunde für das Objekt Date nach momentan Locale.

Die Parameter:

  • minutesValue: ein Integer im Raum vom [0-59].
  • secondsValue: ein Integer im Raum vom [0-59].
  • msValue: ein Integer im Raum vom [0-999].
setSeconds(secondsValue[, msValue])

Das Method setSeconds(..) setzt die Wert vom Sekunde, Milisekunde für das Objekt Date nach momentan Locale.

Die Parameter:

  • secondsValue: ein Integer im Raum vom [0-59].
  • msValue: ein Integer im Raum vom [0-999].
setMilliseconds(millisecondsValue)

Das Method setMilliseconds(msValue) setzt die Wert von Milisekunde für das Objekt Date nach moentan Locale. Der Parameter ist ein Integer im Raum vom [0-999].

setTime(timeValue)
Das Method setTime(timeValue) hilft dem Objekt Date bei der Vertretung einer neuen Zeitpunkt und timeValue ist der Zeitraum, der in Milisekunden ab 01/01/1970 00:00:00:000 bis zu dieser Zeitpunkt gezählt wird.
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()
Das Method toDateString() gibt ein String zur Bezeichnung des Datum des Objekts Date zurück, das die Menschen lesen können.
toDateString-example.js
let date = new Date( );

var str = date.toDateString();

console.log(str); // Thu Nov 29 2018
toTimeString()

Das Method toTimeString() gibt ein String (String) zur Bezeichnung der Zeit des Objekts Date zurück, das die Menschen lesen können.

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()
Das Method toString() gibt ein String zur Bezeichnung des Objekts Date zurück, die die Menschen lesen können.
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()
Das Method toUTCString() gibt ein String zur Bezeichnung des Objekts Date nach Universal Time zurück,die die Menschen lesen können.
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])
Das Method toLocaleDateString([locales][, options]) gibt ein String zur Bezeichnung des Datum des Objekt Date nach Locale und die Optionen im Parameter zurück. Wenn Locale im Parameter nicht bestimmt wird, wird momentan Locale benutzt..
Ein Beispiel mit dem Method toLocaleDateString(..) auf dem Browser.
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])
Das Method toLocaleTimeString([locales][, options]) gibt ein String zur Bezeichnung der Zeit des ObjektDate nachLocale und die Optionen im Parameter zurück. Wenn Locale im Parameter nicht bestimmt wird, wird momentan Locale benutzt.
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])
Das Method toLocaleString([locales][, options]) gibt ein String zur Bezeichnugn des Objekt Date nach Locale und den Optionen im Parameter. Wenn Locale im Parameter nicht bestimmt wird, wird momentan Locale benutzt.
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>

Achtung: Die Methode toLocaleDateString(..), toLocaleTimeString(..), toLocaleString(..) funktioniert auf die Umwelt NodeJS nicht wie erwartet. Das Problem wurde auf GitHub diskutiert:

Anleitungen ECMAScript, Javascript

Show More