我试过寻找有类似问题的人,但还没有找到任何东西。JavaScript日期比较不等于
我在JavaScript中有两个日期,都设置为相同的值... Equality Testing在==上失败,但> =和< =评估为true。
下面是我在比赛中的代码:
var startDate = new Date(2011, 7, 30, 0, 0, 0, 0);
var dt = new Date(2011, 7, 30, 0, 0, 0, 0);
if(startDate == dt)
document.write('They Equal<br />');
if(startDate > dt)
document.write('Start Date is > dt<br />');
if(startDate >= dt)
document.write('Start Date is >= dt<br />');
if(startDate < dt)
document.write('Start Date is < dt<br />');
if(startDate <= dt)
document.write('Start Date is <= dt<br />');
if(dt == startDate)
document.write('They Equal<br />');
if(dt > startDate)
document.write('dt > startDate<br />');
if(dt >= startDate)
document.write('dt >= Start Date <br />');
if(dt < startDate)
document.write('dt < Start Date <br />');
if(dt <= startDate)
document.write('dt <= Start Date <br />');
document.write(dt);
document.write('<br />');
document.write(startDate);
有没有人遇到这样的事,还是我做一些根本性的错误?
我测试过这是Internet Explorer(9),Firefox 5+和Chrome。
更新:
所以两个人贴伟大的答案我的问题,我感谢你们俩:xdazz和DaveRandom。我已经阅读了一个类似问题stackoverflow.com上的一篇文章,一个家伙说,日期对象可以像任何其他的比较,我发现任何其他例子总是做了<或>类型的比较,从来没有一个完整的平等,所以我无法确定我为什么做错了。
感谢你们两位以及其他发布类似答案的人。
@Shef只有约50秒,我给你的麻烦;-) – DaveRandom