JavaScript:
Comparación de dos fechas
Cómo hacerlo:
// Obtener fechas actuales
const fecha1 = new Date();
const fecha2 = new Date('2023-04-01T09:00:00');
// Comparar fechas
console.log(fecha1 > fecha2); // Devuelve true si fecha1 es después de fecha2
console.log(fecha1 < fecha2); // Devuelve true si fecha1 es antes de fecha2
console.log(fecha1.getTime() === fecha2.getTime()); // Compara los milisegundos para saber si son iguales
Ejemplo de salida:
true (o false, dependiendo de la fecha actual)
false (o true, dependiendo de la fecha actual)
false
Inmersión Profunda
Históricamente, lidiar con fechas en JavaScript podía ser complicado debido a la manipulación manual de milisegundos y zonas horarias. Esto llevó al desarrollo de bibliotecas como Moment.js, aunque la mayoría de las necesidades básicas pueden manejarse con el objeto Date
de JavaScript.
Alternativas como Date-fns
o Luxon
ofrecen APIs más ricas y consiguen un buen equilibrio entre peso y funcionalidades.
A nivel de implementación, la comparación de fechas utiliza el valor de tiempo UNIX, que representa los milisegundos desde el 1 de enero de 1970 (Epoch). Dada la precisión de los milisegundos, es raro que dos fechas generadas programáticamente sean exactamente iguales.
Vea También
- Documentación de Mozilla Developer Network sobre el objeto
Date
: MDN Date - Comparando fechas con
Date-fns
: Date-fns Docs - Una guía sobre
Luxon
: Luxon Docs