我正在尝试解析约会,尤其是:
Mer 2015年11月11日00:00:00
进入这个:
Mer 2015年11月11日09:00:00
所以我已经制作了这段代码:
var workDateStart = Date.parseExact(calendarDateStart.toString('dd/MM/yyyy') + ' '+ workingPlan[selDayName].start,'dd/MM/yyyy HH:mm');
问题在于此代码返回null
值。
更多细节可变化的价值
workingPlan[selDayName].start => 09:00
calendarDateStart => Mer Nov 11 2015 00:00:00
答案 0 :(得分:1)
这有点笨拙,但如果您想使用纯JavaScript(无库)执行此操作,则以下内容应该有效。
var workDateStart = new Date(calendarDateStart.toDateString() + ' ' + workingPlan[selDayName].start);
这假设calendarDateStart
和workDateStart
都是Date
个对象(不是字符串),workingPlan[selDayName].start
确实是您提供的格式的字符串。
作为一个孤立的例子:
var d = new Date(); // some date object
var timeString = '09:00'; // some time-only string
var s = d.toDateString() + ' ' + timeString; // combined
var result = new Date(s); // parsed back to a Date object
如果您想使用moment.js执行此操作,请执行以下操作:
var m = moment(); // some moment object
var timeString = '09:00'; // some time-only string
var s = m.format('YYYY-MM-DD') + ' ' + timeString; // combined
var result = moment(s, 'YYYY-MM-DD HH:mm'); // parsed back to a moment object
有一个open issue可以为将来的API添加更明智的功能。