Sekrab Garage

When using ISO format in new Date, browser applies UTC timezone

JavaScript new Date() timezone consideration

TipJavaScript July 20, 21

Buried in MDN documentation, the following note:

Support for ISO 8601 formats differs in that date-only strings (e.g. "1970-01-01") are treated as UTC, not local.

Which essentially means:

const a = new Date('7/12/2021');
// generates Mon Jul 12 2021 00:00:00 GMT+0300

const b = new Date('2021-07-12');
// generates Mon Jul 12 2021 03:00:00 GMT+0300

Even though they are the same date, but because the second string is in ISO format, it is assumed UTC. Thus the date output is 03:00 instead of midnight. Note to self: beware!