我試過尋找有類似問題的人,但還沒有找到任何東西。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