【发布时间】:2016-10-11 08:18:51
【问题描述】:
我有一个英国格式“DD/MM/YYYY HH:mm”的日期,我想用 javascript 创建一个新日期。我正在使用 moment.js 尝试以下操作,但它无法识别时间部分,只是添加了当前时间。
var myDate = "11/10/2016 09:00"
// The toDate() is equivalent to the javascript new Date() function
var newDate = moment(myDate, "YYYY-MM-DD HH:mm").val()).toDate();
// output:
// 20161011T091406Z
// Tue Oct 11 2016 09:14:06 GMT+0100
如您所见,它已将时间部分更改为脚本运行的时间。
【问题讨论】:
-
您的日期格式似乎与输入完全不匹配 - 这是故意的吗?
-
按照建议,您必须将格式更正为与输入字符串匹配的格式。您将拥有:
var newDate = moment(myDate, "DD/MM/YYYY HH:mm").toDate(); -
@jonrsharpe 和 VincenzoC 你们两个都不正确。我正在使用 moment.js 将现有格式解析为 javascript iso 格式。阅读时刻文档:momentjs.com/docs/#/parsing/string-format
-
@adam78 我很高兴您使用我之前评论中的提示解决了您的问题(所以 jonrsharpe 和我都是对的):)
标签: javascript date momentjs