javascript - JS 日期 YYYY-MM-DD 返回不正确的值
问题描述
我有 HTMLDate
输入,它返回格式为“YYYY-MM-DD”的字符串
然后我想把它放入Date
构造函数中,以便我可以将它转换为 ISOFormat(用于 Mongo 查询)
然而,结果出乎意料。执行new Date('2020-06-25')
返回“2020 年 6 月 24 日星期三 20:00:00 GMT-0400(东部夏令时间)”。请注意,这是前一天。为什么会发生这种情况,我怎样才能改变它以获得当前日期?谢谢
解决方案
当你Date
在 JavaScript 中创建一个新对象时,它期望参数是 GMT 格式。然后它将其转换为您当地的时区GMT-0400
,这就解释了为什么它要休息 4 小时。您可以通过将时区附加到日期字符串来设置时区:new Date('2020-06-25 GMT-0400')
应该给您“Thu Jun 25 2020 00:00:00 GMT-0400”。
推荐阅读
- nativescript - 如何在 Nativescript 中没有 Actionbar 的情况下更改 IOS 中的状态栏颜色?
- c# - 使用 Wix 构建 MSI 的递归 DirFiles#
- intellij-idea - 在 Intellij IDEA 中配置 UnetStack
- excel - 通过 VBA 将 Excel 图表放入 PowerPoint
- postgresql - 插入到选择嵌套选择(S)性能。庞大的工会选择
- python - Pytorch 批量矩阵-矩阵外积
- c# - 尝试在文件名中使用变量时出现“找不到路径的一部分”错误
- android - Android 设备稳定 - 仅在一个地方,但有时行驶公里数仍超过 2 公里
- wso2 - 如何从 RESTful API WSO2EI 6.2.0 中的 OnComplete AggregateMediator 获取属性?
- flutter - Flutter:如何在一定数量的索引后在gridview下添加其他小部件