Parsing Dates
Date parsing behavior varies by browser for non-ISO strings. Always use ISO 8601 format or parse manually for reliability.
Date parsing behavior varies by browser for non-ISO strings. Always use ISO 8601 format or parse manually for reliability.
// Reliable: ISO 8601
new Date("2024-06-15"); // OK (UTC midnight)
new Date("2024-06-15T10:30:00Z"); // OK (explicit UTC)
// Unreliable across browsers — avoid
new Date("June 15, 2024");
new Date("15/06/2024");
// Safe manual parsing
function parseDate(str) {
const [y, m, d] = str.split("-").map(Number);
return new Date(Date.UTC(y, m - 1, d));
}
Only parse ISO 8601 strings with new Date() — all other formats have inconsistent browser behavior.
More in JavaScript