比较日期值
要检查 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