Veröffentlicht 9. Oktober 200717 j Hallo, ich versuche mit Hilfe von JavaScript eine Berechnung des aktuellen Alters durchzuführen. Dabei ist das aktuelle Datum und das Geburtstatum gegeben. Doch leider rechnet der das Ganze nicht richtig aus...Kann mir da vlt. jemand helfen: var heute = new Date(); var Geburtsdatum = new Date(1982, 09, 10); //10.10.1982 var Alter = heute - Geburtsdatum; var Alter = Math.floor(Alter/31536000000); alert(Alter); Bei diesem Beispiel würde die Person morgen Geburtstag haben (Heute: 09.10.07). Dennoch rechnet der mir das Alter 25 aus. Bitte...Hiiilfe
9. Oktober 200717 j so solls sein: Objektname = new Date(Jahr, Monat, Tag); so ist deins: var Geburtsdatum = new Date(1982, 09, 10); der 10.09. ist schon vergangen. klar dass er schon 25 ist... schreib lieber: var Geburtsdatum = new Date(1982, 10, 10);
9. Oktober 200717 j Dann stimmts leider auch nicht. Ich habe den Monat extra um einen Wert heruntergeschraubt, weil es ja heißt Das nötige Schema zur Erzeugung eines Datumsobjekt ist, wie auf der genannten Seite beschrieben: var neuesDatumsobjekt = new Date(Jahr, Monat, Tag); Wobei die Monatszählung mit 0 beginnt, Oktober wäre also 9, was man aber z.B. durch den Rechenausdruck eingabedatum.substr(3, 2) - 1 ergibt "10" - 1 ergibt 9 bekommt. Quelle: SELFHTML Forumsarchiv / 2005 / Oktober / Alter ausgeben Mache ich das Ganze wie du meinst, käme als Alter sowohl für heute als auch morgen der Wert 24 raus
9. Oktober 200717 j var Alter = Math.floor(Alter/31536000000); Ich vermute, dass du Schaltjahre berücksichtigen musst.
8. November 200717 j Ich würde einfach die einzelnen Werte vergleichen... nehmen wir an Geburtstag ist der 3.12.1984 Heute ist der 8.11.2007 alter = heute.jahr - datum.jahr = 23 // noch ein jahr zu alt wenn heute.monat > als datum.monat dann alter = alter -1 ende wenn wenn heute.monat = datum.monat dann wenn heute.tag > datum.tag dann alter = alter -1 ende wenn ende wenn [/code] wenn ich nix vergessen hab müsste das eigentlich funktionieren. mfg amfa
15. November 202415. Nov Hallo, Ich habe den Code getestet, und bei mir muss die erste Zeile so heißen : alter = heute.jahr - datum.jahr +1 KAnn aber sein, daß es an meinem Code liegt, daß es nur so zum richtigen Ergebnis führt ...
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.