JavaScript-如何从格式为“0”的字符串创建日期;2001-08-22 03:04:05.000;?
我有一个格式为“2001-08-22 03:04:05.000”的字符串 如何从中创建日期对象?我尝试了Date.parse,但这会导致错误。JavaScript-如何从格式为“0”的字符串创建日期;2001-08-22 03:04:05.000;?,javascript,date,datetime,Javascript,Date,Datetime,我有一个格式为“2001-08-22 03:04:05.000”的字符串 如何从中创建日期对象?我尝试了Date.parse,但这会导致错误。 const newDate=新日期('2001-08-22 03:04:05.000'); log(newDate,typeof newDate,newDate.getMonth()); //抛出错误 const newDate1=新日期('2001-08-22 03:04:05.000'); log(newDate1,typeof newDate1,n
const newDate=新日期('2001-08-22 03:04:05.000');
log(newDate,typeof newDate,newDate.getMonth());
//抛出错误
const newDate1=新日期('2001-08-22 03:04:05.000');
log(newDate1,typeof newDate1,newDate1.getMonth())代码>是最后一个。打字机?因为这也可能是您收到错误的原因。“2001-08-22 03:04:05.000”不是ECMA-262支持的格式,因此解析依赖于实现,请参阅Safari至少将返回无效日期。用一个简单的函数手动解析它,或者使用一个库。代码–只有答案没有帮助。一个好的答案应该解释OP为什么会有问题,以及您的代码是如何解决的。在Safari(以及其他可能的实现)中,此答案中的每个表达式都返回NaN。请解释您的代码如何工作并信任MDN链接,解析不受支持的格式(甚至一些受支持的格式)是一个难题。
new Date('2001-08-22 03:04:05.000').getFullYear();
new Date('2001-08-22 03:04:05.000').getMonth();
new Date('2001-08-22 03:04:05.000').getDate();
new Date('2001-08-22 03:04:05.000').getHours();
new Date('2001-08-22 03:04:05.000').getMinutes();
new Date('2001-08-22 03:04:05.000').getSeconds();