从直觉上看,两个相同的日期比较应该是相等的,但结果不是这样的:constd1=newDate('2019-06-01');constd2=newDate('2018-06-01');constd3=newDate('2019-06-01');d1===d3;//falsed1==d3;//false可以看到不管用===还是==,结果都是false。想想也不奇怪,毕竟是两个独立的JS对象,不是基本数据类型的变量。那么如何判断日期是否相等呢?可以使用toString()或valueOf()。Date对象的toString()方法将日期转换为ISO日期字符串,valueOf()方法将日期转换为以毫秒为单位的时间戳。constd1=newDate('2019-06-01');constd2=newDate('2018-06-01');constd3=newDate('2019-06-01');//SatJun01201908:00:00GMT+0800(中国标准时间)d1.toString();d1.valueOf();//1559347200000d1.toString()===d2.toString();//falsed1.toString()===d3.toString();//true1.valueOf()===d2.valueOf();//falsed1.valueOf()===d3.valueOf();//true有趣的是,虽然==和===不能用来比较日期对象,<而>可以是:d1
