I am trying to subtract hours from a given date time string using javascript. My code is like:
var cbTime = new Date();
cbTime = selectedTime.s
Well first off setting the hours to -5.5
is nonsensical, the code will truncate to an integer (-5
) and then take that as "five hours before midnight", which is 7PM yesterday.
Second, setHours
(and other functions like it) modify the Date object (try console.log(cbTime)
) and return the timestamp (number of milliseconds since the epoch).
You should not rely on the output format of the browser converting the Date object to a string for you, and should instead use get*()
functions to format it yourself.