Buscar..


Comparación de valores de fecha

Para comprobar la igualdad de los valores de Date :

var date1 = new Date();
var date2 = new Date(date1.valueOf() + 10);
console.log(date1.valueOf() === date2.valueOf());

Salida de muestra: false

Tenga en cuenta que debe usar valueOf() o getTime() para comparar los valores de los objetos de Date porque el operador de igualdad comparará si dos referencias de objeto son iguales. Por ejemplo:

var date1 = new Date();
var date2 = new Date();
console.log(date1 === date2);

Salida de muestra: false

Considerando que si las variables apuntan al mismo objeto:

var date1 = new Date();
var date2 = date1;
console.log(date1 === date2);

Salida de muestra: true

Sin embargo, los otros operadores de comparación funcionarán como de costumbre y puede usar < y > para comparar que una fecha es anterior o posterior a la otra. Por ejemplo:

var date1 = new Date();
var date2 = new Date(date1.valueOf() + 10);
console.log(date1 < date2);

Salida de muestra: true

Funciona incluso si el operador incluye la igualdad:

var date1 = new Date();
var date2 = new Date(date1.valueOf());
console.log(date1 <= date2);

Salida de muestra: true

Cálculo de la diferencia de fecha

Para comparar la diferencia de dos fechas, podemos hacer la comparación basada en la marca de tiempo.

var date1 = new Date();
var date2 = new Date(date1.valueOf() + 5000);

var dateDiff = date1.valueOf() - date2.valueOf();
var dateDiffInYears = dateDiff/1000/60/60/24/365; //convert milliseconds into years

console.log("Date difference in years : " + dateDiffInYears);


Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow