javascript - 不正确的日期格式 moment.js
问题描述
我的 util 函数(第一个参数)中有一个带有以下日期的输入 - '2013-12-15'。我使用格式“MM/DD/YYYY”作为格式 moment.js 方法的第二个参数。实际结果:12/14/2013 而不是 12/15/2013(输入日期等于 '2013-12-15')。问题是 - 为什么在格式化后减去一天?
export const formatDateTime = (date, format = MM/DD/YYYY) => {
let useFormat = format
return moment
.utc(date)
.tz('America/New_York')
.format(useFormat)
} // return '12/14/2013'
解决方案
您正在提供一个时区。Moment 将创建一个 Date 对象,日期将类似于2013-12-15T00:00:00Z,然后 moment 将应用时区,因此日期将变为2013-12-14T18:00:00Z。这不是 100% 正确的
推荐阅读
- yii2 - yii2 kartik fileinput 多个加载的文件预览
- javascript - 如何在 onclick 事件的图像期间添加动画?这是我的代码
- mongodb - Kotlin <--> Mongo 缓存
- python - 通过 Bs4 Python 抓取页面并删除多个空格
- vaadin - 上传按钮的uploadSucceeded方法在单击上传按钮时被触发两次而不是一次
- momentjs - 为什么moment.duration 一个月差异的日期不返回月份
- php - 删除 opencart 产品模型
- java - 在通知流上播放声音
- javascript - 在新选项卡中打开 base64 pdf 会冻结某个文件大小的选项卡
- python - 在 Python 中锁定 Tkinter 主窗口并保持 X 按钮运行