String mit Uhrzeit und Integer addieren
bearbeitet von AugeHallo
> von einer Datenbank bekomme ich die variable weekstarttime z.b. als 9:00 zurück. Sie ist als varchar gespeichert.
> Dann gibt es in der gleichen Tabelle die workinghours als Integer z.b. 9
>
> Jetzt benötige ich auf der Webseite bzw. mit Javascript die Uhrzeit
>
> 18:00 also die Startzeit 9:00 plus die working hours 9
>
> So habe ich es versucht, aber da kommt dann ja nur 18 heraus.
>
> var maxtime = parseInt(weekstarttime, 10) + workinghours;
>
> Wie könnte man das besser lösen?
Der Wert von `weekstarttime` („9:00“) wird offensichtlich zu einer Zahl gemacht, damit JS damit addieren kann. JS addiert also nicht `9:00 + 9`, sondern `9 + 9` und das ist – wenig überraschend – `18`. Am besten verwendest du [das JS-eigene Date-Objekt](https://wiki.selfhtml.org/wiki/JavaScript/Objekte/Date), mit dem du Datums- und Zeitwerte direkt berechnen kannst. Da lässt sich mit den passenden Funktionen hinten auch ein „echter“ Zeitwert wie `18:00` oder `18:30` herausholen.
Tschö, Auge
--
Ein echtes Alchimistenlabor musste voll mit Glasgefäßen sein, die so aussahen, als wären sie beim öffentlichen Schluckaufwettbewerb der Glasbläsergilde entstanden.
*Hohle Köpfe* von Terry Pratchett