最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - toISOString() return the wrong data at first april - Stack Overflow

programmeradmin2浏览0评论

I use the method toISOString() to convert a date into a ISO String

 console.log(date);
 var x = date.toISOString();
 console.log(x);

My input date-object contains the following data Wed Apr 01 2020 01:00:00 GMT+0200 (Mitteleuropäische Sommerzeit)

The output of toISOString() is 2020-03-31T23:00:00.000Z

I try to find a solution and explaination about this strange result, because it happens only by the 1st of April - and this is not an april joke. Does somebody can explain the behavior? Or can give me a hint, how I can get the correct value?

I use the method toISOString() to convert a date into a ISO String

 console.log(date);
 var x = date.toISOString();
 console.log(x);

My input date-object contains the following data Wed Apr 01 2020 01:00:00 GMT+0200 (Mitteleuropäische Sommerzeit)

The output of toISOString() is 2020-03-31T23:00:00.000Z

I try to find a solution and explaination about this strange result, because it happens only by the 1st of April - and this is not an april joke. Does somebody can explain the behavior? Or can give me a hint, how I can get the correct value?

Share Improve this question asked Feb 28, 2018 at 14:28 michael-mammutmichael-mammut 2,8035 gold badges31 silver badges49 bronze badges 6
  • How is Date set? – epascarello Commented Feb 28, 2018 at 14:30
  • 2 Different timezones, but the date is the same. – Federico klez Culloca Commented Feb 28, 2018 at 14:31
  • So what's the problem? The ISO string is in UTC while your input date is in GMT+2. They are the same date. – Derek 朕會功夫 Commented Feb 28, 2018 at 14:31
  • There is no problem, both represent exactly the same instant in time, just with different offsets to UTC – phuzi Commented Feb 28, 2018 at 14:32
  • 1 “because it happens only by the 1st of April - and this is not an april joke. Does somebody can explain the behavior?” - you might want to go check when DST ends in 2020 ... – C3roe Commented Feb 28, 2018 at 14:32
 |  Show 1 more ment

1 Answer 1

Reset to default 9

Simple. Your timezone is +0200 GMT, and toISOString() gives you Zulu time. Everything is correct here.

发布评论

评论列表(0)

  1. 暂无评论