Tengo la siguiente cadena de date : 2022-04-16T18:31:00+02:00 y me gustaría extraer la hora local, es decir 2022-04-16T18:31 y la información de compensación +2:00 o 2 usando date-fns .
Sé que puedo hacerlo con una simple manipulación de cadenas como esta:
const [dateTime, offset] = "2022-04-16T18:31:00+02:00".split('+')Sin embargo, si es posible, me gustaría evitar la manipulación de cadenas y usar la biblioteca en su lugar.
Puedo ver que no mucha gente está respondiendo aquí, así que así es como puede obtener la fecha y la hora en Javascript con este tipo de cadena
const [dateTime, offset] = "2022-04-16T18:31:00+02:00".split('+'); var newDate = dateTime; //above variable newDate will hold value that is => 2022-04-16T18:31:00 //don't use split('+'); so you can get Timezone as well getTimeZone = "2022-04-16T18:31:0002:00"; var getTimeZone = getTimeZone.substring(19, getTimeZone.length-0); console.log("timezone is "+ getTimeZone); `````Creo que deberías mirar desde date-fns-tz .
Compruebe el método (utcToZonedTime, getTimezoneOffset).
Espero que esta ayuda 👋🏽
Puedes probar algo como esto... [código no probado]
import { format } from "date-fns"; const d = Date.parse("2022-04-16T18:31:00+02:00"); const outputDate = `${format(d, "yyyy-MM-dd'T'HH:mm")}`; console.log(outputDate);