javascript - momentjs 格式返回日期休息一天?

标签 javascript momentjs

我正在使用 momentjs 来格式化我的日期。但是它显示的是休息日的日期,我不确定为什么。这是我正在使用的代码:

moment(date).format('MMMM 做 YYYY, h:mma')

其中 date = 2018 年 5 月 5 日星期六 00:26:53 GMT-0400(东部夏令时间)

但是结果是 May 6th 2018, 12:26am - 显示 5 月 6 日而不是 5 月 5 日。 有谁知道为什么会这样?谢谢。

最佳答案

您在未指定格式的情况下传递非 ISO 字符串,这将导致在控制台上出现警告,并且可能会显示错误的日期。

Deprecation warning: value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.

始终传递格式作为预防措施。对于您的问题,要正确显示日期,您需要使用 Do 说明符,而不是 do。前者用于月中的第几天,后者用于星期几

var date = moment('Sat May 05 2018 00:26:53 GMT-0400 (Eastern Daylight Time)', 'ddd MMM DD YYYY HH:mm:ss');
console.log(date.format('MMMM Do YYYY, h:mma'))
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.22.1/moment.min.js"></script>

关于javascript - momentjs 格式返回日期休息一天?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50185979/

相关文章:

javascript - moment.js add 不添加时间

javascript - 如何将日期范围字符串转换为可用的 JSON?

javascript - 需要可以指数递增的 slider (不使用范围)

javascript - 在 CSS 类中为图像赋值

javascript - Google Analytics 实时事件页面——保持活跃

javascript - 在查看几个日期字符串后是否有编程方法来识别日期格式?

javascript - 如何 JSON 字符串化 javascript 日期并保留时区

javascript - 如何仅在第 n 次出现时将 TD 字符串拆分为新行

javascript - 如何通过 JQuery/Javascript 将选定的下拉菜单值正确传递给 JSON 函数

javascript - 如何在javascript中将浮点值转换为日期时间格式