在js编程中,一定会遇到过这样的情况,有两个日期对象,然后需要判断他们是否相等,下面我们来说说判断的方法:
例如:
var date1 = new Date("2020-06-06");
var date2 = new Date("2020-06-06");
console.log(date1 == date2); //false
这里date1和date2看上去是一样的,但是运行date1==date2返回的确是false。这是因为date1、date2是对象,类型为引用类型,所以如果我们需要比较他们,需要比较他们的字面量值,而不是单纯的用==来比较。
如果想比较两个date是否相等,可以这么写:
var date1 = new Date("2020-06-06");
var date2 = new Date("2020-06-06");
console.log(date1.getTime() == date2.getTime()); //true
用getTime()方法,就可以返回日期对应耳朵数值,然后就可以比较了。
另外,还有一种方法,如下:
var date1 = new Date("2020-06-06");
var date2 = new Date("2020-06-06");
console.log(date1 - date2 == 0); //true
用date1减去date2,即可以得到它们之间的时间差,如果为0,那么肯定是相等的。