Actualmente tengo la siguiente cadena de fecha en formato alemán:
01.09.2021, 14:28:53 // which means the 1st of September, 2021y trato de analizarlo a UTC, pero desafortunadamente cuando lo hago, cambia los días con los meses.
2021-01-09T14:28:53.000ZEl código que tengo:
const date: string = '01.09.2021, 14:28:53'; moment.utc(date).locale('de').toISOString();Lo que trato de lograr es:
2021-09-01T14:28:53.000ZPasa tu formato personalizado
const date = '01.09.2021, 14:28:53'; const tmp = moment(date, 'DD.MM.YYYY, HH:mm:ss').locale('de').toISOString(); console.log(tmp); <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.1/moment.min.js"></script>No hay necesidad de momento
const de = true; // as opposed to en = true; const str = `01.09.2021, 14:28:53` const [_,aa,bb,yyyy,t] = str.split(/(\d{2})\.(\d{2})\.(\d{4}), (\d{2}\:\d{2}\:\d{2})/) dd = de ? aa : bb; mm = de ? bb : aa; console.log(dd,mm,yyyy,t); console.log(`${yyyy}-${mm}-${dd}T${t}.000Z`);