Разные браузеры возвращают разные даты для одной и той же функции intl.DateTimeFormat
.
Бразилия не следит за переходом на летнее время в этом году https://www.timeanddate.com/time/change/brazil?year=2020#targetText=Daylight%20Saving%20Time%20(DST)%20Not,was%20on%20February%2016%2C%202019
И, похоже, Intl.DateTimeFormat
возвращает неправильное время(пример даты ниже в ноябре 2019 года)
Пример на JSBin: https://jsbin.com/waxekocaqa/edit?html,js,output
const timestamp = new Date('2019-11-07T20:00:00Z');
const londonDf = new Intl.DateTimeFormat('en', {
hour: 'numeric',
minute: 'numeric',
timeZone: 'Europe/London'
});
const saoPauloDf = new Intl.DateTimeFormat('en', {
hour: 'numeric',
minute: 'numeric',
timeZone: 'America/Sao_Paulo'
});
console.log(londonDf.format(timestamp)); // 8:00 pm
console.log(saoPauloDf.format(timestamp)); // 6:00 pm (should be 5:00 pm)
Ожидаемый результат для saoPauloDf
должен быть 5:00 pm
, но, пожалуйста, дайте мне знать, если я упустил что-то очевидное.
Кроме того, Safari показываетправильное время, но Chrome не