Estoy tratando de usar la biblioteca date-fns para sumar y restar fechas, pero no maneja correctamente las fechas UTC. Por ejemplo:
> const { add } = require('date-fns'); undefined > s = new Date('2021-03-27') 2021-03-27T00:00:00.000Z > add(s, {days:1}) 2021-03-28T00:00:00.000Z > add(s, {days:2}) 2021-03-28T23:00:00.000ZEl problema es que mis fechas están en UTC, y quiero hacer aritmética de fechas UTC en ellas, pero tan pronto como se convierten a una fecha/hora, se tratan como fechas locales. Esto es un problema. ¿Como puedo resolver esto?
Puede realizar todas sus operaciones y, al final de su función, llamar al método toISOString() del objeto de fecha final. Devolverá el valor UTC 0.
Y recuerde que el objeto de fecha que ha pasado por parámetro para add la función nunca cambia, el valor devuelto es lo que desea.