Datum und Uhrzeit
Um mit ein Datum bzw. mit einer Uhrzeit rechnen zu können, wird intern jedes Datum in Milisekunden umgerechnet.
Dabei wird, wie in der EDV üblich das Datum 01.01.1970 herangezogen, und berechnet, wieviel Milisekunden seit
diesem Zeitpunkt vergangen ist.
Wollen Sie das aktuelle Datum und Uhrzeit ermitteln, und diese in eine Variable speichern möchten, benutzen Sie
folgenden Code:
var Jetzt = new Date();
Um ein beliebiges Datum in eine Variable zu speichern, benutze einen der folgenden Code:
var Datum = new Date(2006,8,27);
also im Format Jahr, Monat, Tag - Dabei müssen Sie beachten, dass der Monat Januar die Zahl 0 ist, Februar die
Zahl 1, usw. Dezember ist also 11. Dieses gilt auch für das nächte Beispiel, wo eine Uhrzeit im Format
Jahr, Monat, Tag, Stunden, Minuten, Sekunden mit übergeben wird;
var Zeit = new Date(2006,8,27,11,57,16);
Eine weitere Möglichkeit ist, statt Zahlen, eine Zeichenkette zu benutzen. Dabei wird das Format Monat Tag, Jahr,
Stunden:Minuten:Sekunden benutzt:
var Zeit = new Date("December 24, 2006 11:57:16");
Den Monatsnamen müssen Sie dabei in Englisch angeben.
Die letzte möglichkeit wäre, die Milisekunden anzugeben, die Seit dem 01.01.1970 00:00:00 Uhr vergangen sind:
var Zeit = new Date(1165522716763);
Hierbei handelt es sich um den 07.12.2006 um 21:21 Uhr.
Tag ermitteln
Den aktellen Monatsstag ermitteln Sie mit getDate()
. Dabei wird z.B. am 15.11.2006 die Zahl 15
zurückgegeben
<body>
<script>
<!--
var Jetzt = new Date() ;
var Tag = Jetzt.getDate() ;
document.write("Heute ist der " + Tag +".") ;
//-->
</script>
</body>
Das ganze sieht so aus
Den aktuellen Tag ermittelt man mit getDay()
. Am Sonntag wird 0 zurückgegeben, Montag=1, Dienstag=2
usw. Samstag=6. Um den Wochentag auszugeben, benutze ich ein Array. Der Code könnte so aussehen:
<body>
<script>
<!--
var Jetzt = new Date() ;
var Tag = Jetzt.getDay() ;
var Name = new Array("Sonntag", "Montag", "Dienstag", "Mittwoch",
"Donnerstag", "Freitag", "Samstag");
document.write("Heute ist " + Name[Tag]) ;
//-->
</script>
</body>
Das ganze sieht so aus
Monat ermitteln
Den aktellen Monat ermitteln Sie mit getMonth()
. Dabei wird z.B. am 15.11.2006 die Zahl 10
zurückgegeben. Da der Januar 0 ist, ist November also 10. Auch hier benutze ich ein Array, um den aktuellen
Monatsnamen auszugeben.
<body>
<script>
<!--
var Jetzt = new Date() ;
var Monat = Jetzt.getMonth() ;
var Name = new Array("Januar", "Februar", "März", "April",
"Mai", "Juni", "Juli", "August", "September",
"Oktober", "November", "Dezember");
document.write("Wir haben jetzt " + Name[Monat]) ;
//-->
</script>
</body>
Das ganze sieht so aus
Jahr ermitteln
Das aktelle Jahr ermitteln Sie mit getYear()
. Dabei wird z.B. am 15.11.1995 die Zahl 95
zurückgegeben. Doch nn gibt es einige ungereimtheiten. Bei einigen Browsern wird ab 2000 unterschiedliche
Werte zurückgegeben. Zum Beispiel für 2006 geben einige Browser 106 zurück, andere 2006. Deshalb muß
mit der Abrage if
die Zahl überprüft werden:
<body>
<script>
<!--
var Jetzt = new Date() ;
var Jahr = Jetzt.getYear() ;
if (Jahr < 999) Jahr += 1900;
document.write("Wir haben das Jahr " + Jahr) ;
//-->
</script>
</body>
Das ganze sieht so aus
eine weitere möglichkeit ist der einsatz von getFullYear
. Hierbei wird die volle Jahreszahl zurückgegeben.
<body>
<script>
<!--
var Jetzt = new Date() ;
var Jahr = Jetzt.getFullYear() ;
document.write("Wir haben das Jahr " + Jahr) ;
//-->
</script>
</body>
Das ganze sieht so aus
Uhrzeit ermitteln
Mit getHours()
wird die Stunde, mit getMinutes()
die Minutenzahl, und mit getSeconds()
die Sekuden ermittelt. Hier ein kompletter Code:
<!DOCTYPE HTML>
<html lang="de">
<head>
<title>Test</title>
<meta charset="utf-8">
</head>
<body>
<script>
<!--
var Jetzt = new Date();
var Tag = Jetzt.getDate();
var Monat = Jetzt.getMonth() + 1;
var Jahr = Jetzt.getYear();
var Stunden = Jetzt.getHours();
var Minuten = Jetzt.getMinutes();
var Minute2 = ((Minuten < 10) ? ":0" : ":");
var Sekunden = Jetzt.getSeconds();
var Sekunde2 = ((Sekunden < 10) ? ":0" : ":");
if (Jahr<2000) Jahr=Jahr+1900;
document.write("<h2>Herzlich Willkommen!<\/h2><b>Heute ist der "
+ Tag + "." + Monat + "." + Jahr + ". Es ist jetzt "
+ Stunden + Minute2 + Minuten + Sekunde2 + Sekunden + " Uhr<\/b>");
//-->
</script>
</body>
</html>
Das ganze sieht so aus
Mit Datum rechnen
Um mit dem Datum zur rechnen, ist es sinnvoll, die zu berechnenen Daten in Millisekunden
umzurechnen. In den folgenen Beispiel wird zum aktuellen Datum 200 Tage hinzugerechnet. Mit
setTime
wird das neue Datum übergeben.
<!DOCTYPE HTML>
<html lang="de">
<head>
<title>Datum addieren</title>
<meta charset="utf-8">
<script>
var jetzt = new Date();
var heute = jetzt.getTime();
var dann = heute + (200 * 24 * 60 * 60 * 1000);
jetzt.setTime(dann);
var Jahr = jetzt.getFullYear();
var Monat = jetzt.getMonth() + 1;
var Tag = jetzt.getDate();
alert("in 200 Tagen ist der " + Tag + "." + Monat + "." + Jahr);
</script>
</head>
<body>
</body>
</html>
Das ganze sieht so aus
Einfacher zu rechnen kann man mit Jahre. Übergeben sie das Jahr dann mit setYear
.
<!DOCTYPE HTML>
<html lang="de">
<head>
<title>Datum addieren</title>
<meta charset="utf-8">
<script>
var jetzt = new Date();
var heute = jetzt.getTime();
var Jahr = jetzt.getFullYear()
jetzt.setYear(Jahr + 1);
var Jahr = jetzt.getFullYear();
var Monat = jetzt.getMonth() + 1;
var Tag = jetzt.getDate();
alert("in 1 Jahr ist der " + Tag + "." + Monat + "." + Jahr);
</script>
</head>
<body>
Das ganze sieht so aus