大家一定遇到過這樣的情況,有兩個日期對象,然后需要判斷他們是否相等。
例如:
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/ ,請勿用於任何商業用途