Estoy empezando con Luxon y la 'Fecha' de JavaScript. Utilizo el siguiente formato de fecha: Sat Feb 05 2022 00:00:00 GMT+0200 (Eastern European Standard Time) . Quiero comparar las fechas con la fecha de hoy y obtener la diferencia de días de este formato Sat Feb 05 2022 00:00:00 GMT+0200 (Eastern European Standard Time) . Sin embargo, estoy recibiendo días decimales '2.5154091898148145' cuando mi salida esperada es de dos días. No se como solucionarlo.
También quiero obtener las próximas fechas y las fechas anteriores.
Gracias por adelantado.
const { DateTime } = require("luxon"); const today = new Date(); const day = "Sat Feb 05 2022 00:00:00 GMT+0200 (Eastern European Standard Time)"; const date1 = DateTime.fromISO(new Date(day).toISOString()); const diff = date1.diff(DateTime.now(), ["days"]).toObject(); console.log(diff.days); // Output // 2.520294085648148 // Expected output // 1. Compare day should be 2 days // 2. Find next day('2022-02-06') and previous day(('2022-02-04')) from `day` variable // 3. Return date format like this: 5.2.2022 from `day` variableSimplemente puede usar Math.round() o Math.floor() en el resultado según sea necesario:
const { DateTime } = require("luxon"); const today = new Date(); const day = "Sat Feb 05 2022 00:00:00 GMT+0200 (Eastern European Standard Time)"; const date = DateTime.fromISO(new Date(day).toISOString()); const diff = date.diff(DateTime.now(), ["days"]).toObject(); const days = Math.floor(diff.days) console.log(days); //2