【发布时间】:2017-04-14 14:26:15
【问题描述】:
我有一个M/D/YYYY 格式的字符串日期,我正在尝试将其格式化为new Date() 日期。我尝试了以下方法,它正在打印出Invalid Date。
console.log(date)
console.log(moment(date, "MM/DD/YYYY").toDate())
console.log(moment(date, "M/D/YYYY").toDate())
3/10/2017
2017-10-03T04:00:00.000Z
2017-10-03T04:00:00.000Z
3/13/2017
Invalid Date
Invalid Date
https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.js
这会在没有任何内容的情况下正确解析,但会引发大量警告。
var date = '2/23/2017';
console.log(moment(date, "MM/DD/YYYY").toDate())
console.log(moment(date, "M/D/YYYY").toDate())
var date = '3 / 13 / 2017';
console.log(moment(date, "MM/DD/YYYY").toDate())
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.js"></script>
console.log(moment(date).toDate())
【问题讨论】:
-
你为什么不直接使用
new Date(date);? -
不能用最新版本重现你的问题,你能提供一个 sn-p 或小提琴来显示你的问题吗?您使用的是哪个版本的时刻?在哪个浏览器/环境中?
-
将您的代码转换为可运行的 sn-p 表明它不会引发任何错误。投票结束为“无法复制”。
标签: javascript date momentjs