moment.js 第二个参数无效

moment.js second argument not working

不确定为什么返回以下内容 false。第二个参数中指定的格式正是我在初始化 Bootstrap Datetimepicker.

时指定的格式
moment('Fri 5 Jan, 2018 - 05:00 PM', 'ddd d MMM, YYYY - hh:mm A').isValid()

我正在尝试将第一个参数中的日期时间转换为 YYYY-MM-DD HH:mm 格式,但 moment 一直返回无效日期错误。

根据 documentation 你应该使用大写字母 D 作为日期数字(5 Jan),而你现在使用小写字母 d .

moment('Fri 5 Jan, 2018 - 05:00 PM', 'ddd D MMM, YYYY - hh:mm A').isValid();

Live example

您需要使用时区。如果没有时区,您可能会得到错误的结果。

var dateFormat = 'ddd D MMM, YYYY - hh:mm A';

moment(moment("Fri 5 Jan, 2018 - 05:00 PM",'Asia/kolkata').format(dateFormat),dateFormat).isValid();