Pada versi terbaru (2.15.1), parseZone () tampaknya tidak berfungsi dengan benar saat offset adalah utc.
moment.parseZone ('2016-05-04T00: 00: 00Z'). format ()
=> "2016-05-04T08: 00: 00Z" buruk
moment.parseZone ('2016-05-04T00: 00: 00 + 08: 00'). format ()
=> "2016-05-04T00: 00: 00 + 08: 00" bagus
Metodenya bagus di 2.14.1, saya baru saja memperbarui moment.js ke 2.15.1 dan versi baru gagal dalam kasus uji saya.
Ya. Itu salah. Saya mungkin akan melihat apakah saya tidak bisa menangani yang satu itu malam ini, saya rasa saya tahu di mana itu terjadi.
FYI bug ini diperkenalkan dalam perbaikan untuk # 3083, b2ee2d444282fcb90abfd43fe562253c73e14b08
Apakah ini mungkin terkait? Saya juga menguji dengan 2.15.1:
t = moment().toISOString();
console.log(t.toString());
parsed = moment.parseZone(t);
console.log(parsed.toISOString());
Keluaran:
2016-10-14T15:33:37.457Z
2016-10-14T17:33:37.457Z
Waktu lokal saya adalah "Eropa / Wina" dan dengan demikian saya tahu dari mana perbedaan 2 jam itu mungkin berasal, tetapi saya tidak mengerti mengapa harus melakukannya.
Dengan 2.14.1 saya mendapatkan hasil yang diharapkan:
2016-10-14T15:36:23.956Z
2016-10-14T15:36:23.956Z
Humas menangani masalah yang saya yakini - # 3504 - Beri tahu saya jika masalahnya benar-benar salah. @bayu_joo
Saya dapat mengonfirmasi bahwa ini memperbaiki masalah saya dari https://github.com/moment/moment/issues/3463#issuecomment -253836488
Komentar yang paling membantu
3504 baru saja diberi label bug fix w00t!