reimario Geschrieben 9. Oktober 2007 Geschrieben 9. Oktober 2007 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 Zitieren
trebstyle Geschrieben 9. Oktober 2007 Geschrieben 9. Oktober 2007 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); Zitieren
reimario Geschrieben 9. Oktober 2007 Autor Geschrieben 9. Oktober 2007 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 Zitieren
beebof Geschrieben 9. Oktober 2007 Geschrieben 9. Oktober 2007 var Alter = Math.floor(Alter/31536000000); Ich vermute, dass du Schaltjahre berücksichtigen musst. Zitieren
reimario Geschrieben 9. Oktober 2007 Autor Geschrieben 9. Oktober 2007 Und wie mache ich das dann? Zitieren
amfa Geschrieben 8. November 2007 Geschrieben 8. November 2007 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 Zitieren
rh_balingen Geschrieben 15. November Geschrieben 15. November 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 ... tomy139 reagierte darauf 1 Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.