safari์—์„œ new Date()

๐Ÿ˜ก ์ด์Šˆ

Datepicker(JQuery UI)๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐœ๋ฐœํ•˜๋˜ ์ค‘ Android์—์„œ๋Š” ๋ฌธ์ œ๊ฐ€ ์—†์—ˆ์œผ๋‚˜ ios์—์„œ ์บ˜๋ฆฐ๋” ๋‚ด ๋‚ ์งœ๊ฐ€ ํด๋ฆญ๋˜์ง€ ์•Š๋Š” ์˜ค๋ฅ˜(ํฌ๋กœ์Šค ๋ธŒ๋ผ์šฐ์ง• ์ด์Šˆ)๊ฐ€ ๋ฐœ์ƒํ•˜์˜€๋‹ค.

๐Ÿคช ์›์ธ

1
2
3
4
var start_date = new Date("2021-08-19 10:00:00");

// ios safari
// Invalid Date

์œ„์˜ Date๊ฐ์ฒด์—์„œ ๊ผฌ์—ฌ๋ฒ„๋ ค ๋‚ ์งœ๊ณ„์‚ฐ์„ ๋ชปํ•ด ์บ˜๋ฆฐ๋”์— ๋‚ ์งœ ์ถœ๋ ฅ์ด๋‚˜ ํด๋ฆญ์ด ๋˜์ง€ ์•Š์•˜๋˜ ๊ฒƒ.
ES5 Spec์—๋Š” ์ถ”๊ฐ€๊ฐ€ ๋˜์—ˆ์œผ๋‚˜ safari์—์„œ๋Š” โ€œyyyy-mm-ddโ€ํ˜•์‹์˜ Stringํƒ€์ž…์„ ์ง€์›ํ•˜์ง€ ์•Š๋Š”๋‹ค๊ณ  ํ•œ๋‹ค.

๐Ÿ˜‡ ํ•ด๊ฒฐ

1
2
3
var date_string = "2021-08-19 10:00:00";
date_string.replace(/-/g, "/");
var start_date = new Date( date_string );

์ •๊ทœ์‹์„ ์‚ฌ์šฉํ•˜์—ฌ โ€œyyyy-mm-ddโ€์˜ ํฌ๋งท์„ โ€œyyyy/mm/ddโ€๋กœ ๋ณ€๊ฒฝํ•˜์—ฌ ํ•ด๊ฒฐํ•˜์˜€๋‹ค.

๋Œ“๊ธ€