How to convert a certain format of string to a Date in TypeScript

68 views Asked by At

I need to convert strings in the following format to Date objects in TypeScript:

var dateTimeString:string = "20231002-123343"

I have rolled my own like so:

var dateTime:string[] = dateTimeString.split("-");

if(dateTime.length > 1)
    {
      var year:string = dateTime[0].substring(0,4);
      var month:string = dateTime[0].substring(4,6);
      var date:string = dateTime[0].substring(6,8);
      var hour:string = dateTime[1].substring(0,2);
      var minute:string = dateTime[1].substring(2,4);
      var second:string = dateTime[1].substring(4,6);

      dateObject = new Date(Number(year), Number(month) - 1, Number(date),
                            Number(hour), Number(minute), Number(second));
    }

This works but is a more succinct/better way possible?

1

There are 1 answers

1
AliLotfi On

You can use moment.js

let dateObject = moment(dateTime[0], "YYYYMMDD")

https://momentjs.com/