var dt1=new Date("2013/05/25"); //yyyy/MM/dd
var dt2=new Date("2013/05/24");
if(dt1>dt2)
{
alert("invalid Date!");
}
此代码适用于所有浏览器..
但如果我们选择:
var dt1=new Date("25/05/2013"); //dd/MM/yyyy
var dt2=new Date("24/05/2013");
if(dt1>dt2)
{
alert("invalid Date!");
}
此代码无法在所有浏览器中使用?为什么? 是否有任何特定日期格式应该被所有浏览器接受? DateTime还有标准吗?谢谢........
答案 0 :(得分:3)
是的,Javascript Date Object有一个标准。
其中一个构造函数是new Date(dateString);
,而对于dateString则有一个解释:
表示日期的字符串值。该字符串应采用parse方法识别的格式(符合IETF的RFC 2822时间戳)。
在IE中有点不同IE WAY
所以最安全的方法就是使用最后一个构造函数:
new Date(year, month, day [, hour, minute, second, millisecond]);
或您的dateString必须为yyyy/mm/dd
答案 1 :(得分:0)
是 dd / MM / yyyy格式不支持所有浏览器,我们也将这种类型的日期格式更改为字符串,即使在php中我们也通过strtotime()继续使用此格式功能