Javascript Momentjs:解析像';年/月/日hmA和#x27;不';行不通
我有一个日期字符串,并尝试使用moment.js解析它:Javascript Momentjs:解析像';年/月/日hmA和#x27;不';行不通,javascript,date,momentjs,Javascript,Date,Momentjs,我有一个日期字符串,并尝试使用moment.js解析它: var d = '06/09/2015 200AM'; var date = moment(d, 'MM/DD/YYYY hmmA'); 但是,解析后的时间似乎不合适: console.error(date.hours); //output: 20 我做错什么了吗 我想如果用“:”分隔小时和分钟可以解决这个问题,但是时间是从a的值中得到的,我不想在其中加“:” 感谢您的帮助。这是一种非常奇怪的字符串格式,通常情况下,人们会希望该小时值
var d = '06/09/2015 200AM';
var date = moment(d, 'MM/DD/YYYY hmmA');
但是,解析后的时间似乎不合适:
console.error(date.hours); //output: 20
我做错什么了吗
我想如果用“:”分隔小时和分钟可以解决这个问题,但是时间是从a的值中得到的,我不想在其中加“:”
感谢您的帮助。这是一种非常奇怪的字符串格式,通常情况下,人们会希望该小时值有一个可靠的两位数。我想你必须对它进行预处理
var d = /*...get the string from wherever...*/;
var r = /^(\d{2}\/\d{2}\/\d{4}) (\d{3}..)$/
var m = r.exec(d);
if (m) {
d = m[1] + " 0" + m[2];
}
var date = moment(d, 'MM/DD/YYYY hmmA');
这是因为
'06/09/2015 200AM'
是无效日期,因此无法工作。下面是一个无效datetime旁边的无效datetime的小提琴示例。只要摆弄这把小提琴就行了
如果不想用冒号和空格来确定日期。我已经更新了fiddle,使用javascript为您注入“:”和空间:
这对我来说似乎是个问题。报告于。