首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Date-fns格式后不同的日期()

Date-fns格式后不同的日期()
EN

Stack Overflow用户
提问于 2019-04-08 00:57:26
回答 1查看 175关注 0票数 2

如果我使用date-fns addYears()创建日期,我会看到预期的日期:

代码语言:javascript
复制
let d = addYears(new Date('2015-01-01), 1) // 2016-01-01T00:00:00.000Z

但是,当我使用format()作为字符串输出时,我损失了一天:

代码语言:javascript
复制
let f = format(d, 'YYYY-MM-DD')

// expected output: 2016-01-01
// actual output: 2015-12-31

这是format()中的错误还是预期的输出?如果是这样,有没有可能解决这个问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-11 03:01:56

我正在和某人讨论这件事。如果将T00:00 (显式设置小时和分钟)附加到日期字符串,它将存储正确的日期。如果在时区偏移量中省略小时和分钟,则日期时间将解释为用户本地时间。如果完全省略时间,日期将被解释为UTC。

因此,foo = new Date('2015-01-01T00:00')应该存储正确的日期,然后使用format.()函数,它将输出正确的日期。

代码语言:javascript
复制
let d = addYears(new Date("2015-01-01T00:00"), 1);
let f = format(d, "YYYY-MM-DD");

will output ---> 2016-01-01
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55561508

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档