Javascript判斷兩個日期是否相等


大家一定遇到過這樣的情況,有兩個日期對象,然后需要判斷他們是否相等。

例如:

var date1 = new Date("2013-11-29");
var date2 = new Date("2013-11-29");
console.log(date1 == date2); //false

這里,date1和date2看上去是一樣的,但是運行 date1 == date2 返回的卻是false。這是因為date1、date2都是對象,類型為引用類型,所以如果需要比較他們,需要去比較他們的字面量值,而不是單純的用 == 來比較。

如果想比較兩個date是否相等,可以這么寫

var date1 = new Date("2013-11-29");
var date2 = new Date("2013-11-29");
console.log(date1.getTime() == date2.getTime()); //true

用getTime()方法,就可以返回日期對應的數值,然后比較就可以了。

 

其實,還有一種方法也可以比較日期。

var date1 = new Date("2013-11-29");
var date2 = new Date("2013-11-29");
console.log(date1 - date2 == 0); //true

這里用date1減去date2,即可以得到它們之間的時間差,如果為0,那么肯定是相等的。

 

當然,還有很多其余的方法,如果有的話,可以在評論里留言,我補充進來。

 

轉載本站文章請注明作者和出處 奇葩一朵朵 – http://www.cnblogs.com/season-huang/ ,請勿用於任何商業用途

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM