javascript - 使用 MomentJS 的 Javascript 中的无效日期
问题描述
MomentJS 不断为以下值打印无效日期:Time: '2018-01-01T00:01:01.001+01:00'
,它是 Object 的一部分loraContent
。
我目前这样称呼它:
var formatted = moment(loraContent.Time, "yyyy-mm-ddThh:mm:ss.sss+01:00").format("hh:mm A");
记录formatted
控制台时返回“无效日期”
解决方案
您应该使用大写字母来表示年、月和日标记 ( docs ):
let time = '2018-01-01T00:01:01.001+01:00'
let formatted = moment(time, "YYYY-MM-DDThh:mm:ss.sss+01:00").format("hh:mm A");
console.log(formatted)
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"></script>
似乎 v2.5.1 与小写保持了一些兼容性。
推荐阅读
- xpath - 如何在 Tibco BW 5 中使用 XPath 格式化数字
- ios - 如何使用 alamofire 将数组数据发送到 api?
- javascript - 如何将这两个功能合二为一?
- java - 如何在 Liquibase 中使用其他表中的列创建索引?
- apache-spark - spark结构化流检查点目录下的子目录
- javascript - 以下哪项决定是否在浏览器中启用 cookie?
- reactjs - TypeError: (node.text || []).map 不是函数
- android - 在Android项目中,单元测试能达到的合理代码覆盖率是多少?
- python - 为什么最后一个函数没有执行?
- php - PHP 7.3 使用 PDO SQLSRV 返回奇怪的结果