尝试使用javascript中的npm日期和时间库分析包含AM或PM的字符串时出现无效日期错误

尝试使用javascript中的npm日期和时间库分析包含AM或PM的字符串时出现无效日期错误,javascript,datetime,Javascript,Datetime,我在尝试解析包含PM或AM以及时间和日期的字符串时遇到无效日期错误,以下是我的代码: const date = require('date-and-time'); let d = date.parse('Dec, 25 2019 at 3:51 AM', 'MMM, D YYYY at h:m A'); //same error with following line also //let d = date.parse('Dec, 25 2019 at 3:51 AM', 'MMM, D Y

我在尝试解析包含PM或AM以及时间和日期的字符串时遇到无效日期错误,以下是我的代码:

const date = require('date-and-time');

let d = date.parse('Dec, 25 2019 at 3:51 AM', 'MMM, D YYYY at h:m A');

//same error with following line also
//let d = date.parse('Dec, 25 2019 at 3:51 AM', 'MMM, D YYYY at h:m AA (*)');

console.log(d);
结果:

Invalid Date
我在这里引用他们的文档:

该页面在文档中有以下行,我想知道我是否误解了它们:

  A         meridiem    a.m., p.m.
  a (*)     meridiem    A.M., P.M.
  AA (*)    meridiem    AM, PM
  aa (*)    meridiem    am, pm

正如@ChrisG评论的那样,问题在于您使用的是
AM
/
PM
而不是
a.m.
/
p.m.

当使用后者时,它会起作用,请参见沙盒

编辑:


如果您想使用AM/PM,您应该在该软件包上创建一个功能请求,或者切换到另一个软件包(例如,片刻)

该页面显示的是
a.m.
p.m.
,而不是
AM
PM
。除了这个问题之外,如果我理解正确,页面文档还包括AM-PM谢谢-是,我需要使用PM或AM。我不能使用上午或下午,因为原文已超出我的控制范围。在解析之前,我可以通过编程方式将AM和PM替换为a.m./p.m.,但在我看来,这似乎有些草率。您可能应该寻找另一个日期时间包,或者,如您所说,将AM/PM替换为a.m./p.m,或者,创建对该包的功能请求