我试图将格式为dd-mm-yyyy的字符串转换为JavaScript中的日期对象,使用以下方法:

 var from = $("#datepicker").val();
 var to = $("#datepickertwo").val();
 var f = new Date(from);
 var t = new Date(to);

("#datepicker").val()包含格式为dd-mm-yyyy的日期。 当我执行以下操作时,我得到“无效日期”:

alert(f);

这是因为“-”符号吗?我怎样才能克服这个问题呢?


当前回答

你也可以在date()对象的圆括号内写一个日期,就像这样:

new Date("Month dd, yyyy hh:mm:ss")
new Date("Month dd, yyyy")
new Date(yyyy,mm,dd,hh,mm,ss)
new Date(yyyy,mm,dd)
new Date(milliseconds)

其他回答

看看Datejs中所有与日期相关的琐碎问题。你也可以用parseDate函数来解决这个问题

使用以下格式:myDate = new Date('2011-01-03');// 2011年1月3日星期一00:00:00

var from = $("#datepicker").val(); 
var f = $.datepicker.parseDate("d-m-Y", from);

你也可以在date()对象的圆括号内写一个日期,就像这样:

new Date("Month dd, yyyy hh:mm:ss")
new Date("Month dd, yyyy")
new Date(yyyy,mm,dd,hh,mm,ss)
new Date(yyyy,mm,dd)
new Date(milliseconds)
new Date().toLocaleDateString();

就这么简单,只是把你的日期传递给js的日期对象