Safari na OSX wierzy, że 6 października 2013 r. Jest sobotnią Australią. Nie jest, to właściwie niedziela.Dlaczego Safari jest zdezorientowany tematem Date.getDay() dla rozpoczęcia DST w Sydney, w strefie czasowej Aus?
Aby zreplikować ten problem, ustaw swoją strefę czasową na Sydney-Australia, otwórz konsolę programisty w Safari i wprowadź nową datę ("2013/10/06"). Dostaniesz to:
Teraz zmień Seattle-USA, a dostaniesz to:
Problem pojawia się również do Melbourne Australii, ale nie dla miast dalszych północ, np. Brisbane (pasuje do zoning for Australian DST) lub kilka innych miast, które testowałem na całym świecie.
Tak się składa, że 6 października 2013 r. To start of daylight savings time in Sydney.. I ten sam błąd dotyczy innych dat rozpoczęcia DST w innych latach. Wydaje się, że nie ma problemów z datami końcowymi DST. Wydaje się, że nie ma problemu z datami rozpoczęcia DST w strefie czasowej PDT. Ponadto Chrome i Firefox nie wykazują tego problemu.
Testowałem większość tego na dwóch różnych komputerach Mac, jeden na Snow Leopard z Safari 5.1.7 i jeden na Lion z Safari 6.0.2.
Pytanie brzmi - czy jest to błąd, czy jest jakiś racjonalny powód tego?
samo zachowanie na Safari pod Win7 dla mnie – koopajah
Spróbuj: 'D = new Date (" 2013-10 -06 "); d.setMinutes (d.getMinutes() + d.getTimezoneOffset()) ' –
Moim hackem jest użycie' new Date (datestring + "12:00"). getDay() 'który kładzie czas solidnie w środku dnia z dala od wszystkich przełączników DST (http://www.worldtimezone.com/daylight.html). – jlarson