2015-12-08 45 views
0

以下代码不会比较两个日期。JavaScript日期比较失败,但输出的值相同

var dateTextB=columns[0]; 
     var dateB = new Date(dateTextB); 

     alert(dateA+' '+dateB); 

     if (dateA==dateB) 
     { 
     // code 
     } 

     dateA= new Date(dateTextB); 

,打印

星期一2014年8月18日23:30:00 GMT + 0600(中亚标准时间)----------星期一2014年8月18日23:30:00 GMT + 0600(中亚标准时间)

但不满足条件。但有时打印相同的值。我也试过if (dateA==dateB.getTime())也有。

有人知道这里有什么问题吗?

+0

是安全的JavaScript,你应该总是使用''===作为比较操作符([查看](http://stackoverflow.com/questions/359494/does-it -matter-which-equals-operator-vs -i-use-in-javascript-comparisons)) – Niklas

+0

我也试过了。它不起作用。 – tanvir

+0

我没有说这是解决方案。这就是为什么我没有发布答案。我只想指出,与等号相比,这是更好的运营商。 – Niklas

回答

0

你有没有试过

if (dateA.getTime()==dateB.getTime()) 
{ 
} 
+0

是的,我尝试过但不起作用。 – tanvir

+0

@tanvir请在这种情况下分享小提琴 – gurvinder372

+0

@ gurvinder:这里是链接http://jsfiddle.net/tanvirbd/e42ack2L/1/ – tanvir