javascript compare dates
- La forma más sencilla de comparar diferentes fechas es convertirlas primero en un objeto Date utilizando la construcción
new Date()
. - La mayoría de las veces, obtendrá un valor de fecha de una interfaz de usuario de selector de fecha. Eso significa que puede pasar la cadena que representa su fecha a la construcción
new Date()
para crear el objeto Date.
const cDate = new Date('April 13, 2010'); const jDate = new Date('April 10, 2010');
- Puede compararlos usando menos que el operador
(<)
o mayor que(>)
.
const cDate = new Date('April 13, 2010'); const jDate = new Date('April 10, 2010'); if (cDate < jDate) { console.log('cDate is less than jDate'); } if (cDate > jDate) { console.log('cDate is greater than jDate'); }
cDate is greater than jDate
comparar data javascript
Nota : El operador de comparación de igualdad
(=== o ==)
no funcionará directamente para estos objetos Date
const cDate = new Date('April 13, 2010'); const jDate = new Date('April 13, 2010'); if (cDate === jDate) { console.log('Equal'); } else { console.log('Not Equal'); }
Salida
Not Equal
Si desea utilizar el operador igual, debe comparar las fechas utilizando el método
getTime()
gettime javascript
const cDate = new Date('April 13, 2010'); const jDate = new Date('April 13, 2010'); if (cDate.getTime() === jDate.getTime()) { console.log('Equal'); } else { console.log('Not Equal'); }
Salida
Equal
Comparación con valueOf
const cDate = new Date('April 13, 2010'); const jDate = new Date('April 13, 2010'); if (cDate.valueOf() === jDate.valueOf()) { console.log('Equal'); } else { console.log('Not Equal'); }
Salida
Equal
compare date javascript
date-fns
es simplemente una colección de utilidades y métodos auxiliares para facilitar el uso de objetos Date nativos de JavaScript.
import { isAfter, isBefore, areEqual, isSameDay } from 'date-fns'; const cDate = new Date('09/12/2021'); const jDate = new Date('09/12/2011'); isAfter(cDate, jDate); // true isBefore(cDate, jDate); // false areEqual(cDate, jDate); // false isSameDay(cDate, jDate); // false
Compara fechas usando el moment.js
- Para comparar dos fechas, simplemente convierta las fechas en el objeto momento y use la función
isSame()
.
moment('2021-04-21').isSame('2021-04-21'); // true
- Compara si solo el día es el mismo.
moment('2021-04-21').isSame('2021-04-21', 'day'); // true moment('2021-04-21').isSame('2021-04-20', 'day'); // false
- Compara si los meses son iguales.
moment('2021-04-21').isSame('2021-04-21', 'month'); // true moment('2021-04-21').isSame('2021-05-21', 'month'); // false
- Compara si los años son iguales.
moment('2021-04-21').isSame('2021-04-21', 'year'); // true moment('2020-04-21').isSame('2021-04-21', 'year'); // false