要检查Date值的相等性:
var date1 = new Date(); var date2 = new Date(date1.valueOf() + 10); console.log(date1.valueOf() === date2.valueOf());
样本输出: false
请注意,必须使用valueOf()或getTime()比较Date对象的值,因为如果两个对象引用相同,则相等运算符将进行比较。例如:
var date1 = new Date(); var date2 = new Date(); console.log(date1 === date2);
样本输出: false
而如果变量指向同一个对象:
var date1 = new Date(); var date2 = date1; console.log(date1 === date2);
样本输出: true
但是,其他比较运算符将照常工作,您可以使用<和>比较一个日期早于另一个日期。例如:
var date1 = new Date(); var date2 = new Date(date1.valueOf() + 10); console.log(date1 < date2);
样本输出: true
即使运算符包含相等,它也可以工作:
var date1 = new Date(); var date2 = new Date(date1.valueOf()); console.log(date1 <= date2);
样本输出: true