I'm getting an error using moment-timezone
with America/Sao_Paulo
trying to parse date with America/Sao_Paulo
offset. I've created this code:
const date = "2019-1-1 23:30";
const format = "YYYY-M-D HH:mm";
const timezone = "America/Sao_Paulo";
const dateMoment = moment.tz(date, format, timezone);
The output of dateMoment
is 2019-01-01T23:30:00-02:00
but I expect 2019-01-01T23:30:00-03:00
, since America/Sao_Paulo
has offset -03:00
.
Am I missing something or did I initialize dateMoment
wrong?
const date = "2019-1-1 23:30"; const format = "YYYY-MD HH:mm"; const timezone = "America/Sao_Paulo"; const dateMoment = moment.tz(date, format, timezone); console.log(dateMoment.format()); console.log(moment.tz(timezone).format('Z'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.10.6/moment.min.js"></script> <script type="text/javascript" src="http://momentjs.com/downloads/moment-timezone-with-data.js"></script>
On January 1st 2019, Sao Paulo was still on Summer Time . It was UTC-2 until February 17th.
Brazil abolished summer time going forward , but that hadn't taken effect yet.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.