I want to create a new Date object, with a specific date. I thought of converting it from a specific string, for example:

let dateString = '1968-11-16T00:00:00' 

How can I convert it to a date object in typescript?

Update:

I'm asking for a solution in Typescript and not in Javascript, and in Angular2, not AngularJS (1.x)

5

1 Answer

You can use date filter to convert in date and display in specific format.

In .ts file (typescript):

// variables used in html let dateString = '1968-11-16T00:00:00' let newDate = new Date(dateString); // format date in typescript getFormatedDate(date: Date, format: string) { const datePipe = new DatePipe('en-US'); return datePipe.transform(date, format); } // Convert date to user timezone const localDate: Date = this.convertToLocalDate('01/01/2021'); convertToLocalDate(responseDate: any) { try { if (responseDate != null) { if (typeof (responseDate) === 'string') { if (String(responseDate.indexOf('T') >= 0)) { responseDate = responseDate.split('T')[0]; } if (String(responseDate.indexOf('+') >= 0)) { responseDate = responseDate.split('+')[0]; } } responseDate = new Date(responseDate); const newDate = new Date(responseDate.getFullYear(), responseDate.getMonth(), responseDate.getDate(), 0, 0, 0); const userTimezoneOffset = newDate.getTimezoneOffset() * 60000; const finalDate: Date = new Date(newDate.getTime() - userTimezoneOffset); return finalDate > Util.minDateValue ? finalDate : null; } else { return null; } } catch (error) { return responseDate; } } 

In HTML:

{{dateString | date:'MM/dd/yyyy'}} 

Below are some formats which you can implement :

Backend:

public todayDate = new Date(); 

HTML :

<select> <option value=""></option> <option value="MM/dd/yyyy">[{{todayDate | date:'MM/dd/yyyy'}}]</option> <option value="EEEE, MMMM d, yyyy">[{{todayDate | date:'EEEE, MMMM d, yyyy'}}]</option> <option value="EEEE, MMMM d, yyyy h:mm a">[{{todayDate | date:'EEEE, MMMM d, yyyy h:mm a'}}]</option> <option value="EEEE, MMMM d, yyyy h:mm:ss a">[{{todayDate | date:'EEEE, MMMM d, yyyy h:mm:ss a'}}]</option> <option value="MM/dd/yyyy h:mm a">[{{todayDate | date:'MM/dd/yyyy h:mm a'}}]</option> <option value="MM/dd/yyyy h:mm:ss a">[{{todayDate | date:'MM/dd/yyyy h:mm:ss a'}}]</option> <option value="MMMM d">[{{todayDate | date:'MMMM d'}}]</option> <option value="yyyy-MM-ddTHH:mm:ss">[{{todayDate | date:'yyyy-MM-ddTHH:mm:ss'}}]</option> <option value="h:mm a">[{{todayDate | date:'h:mm a'}}]</option> <option value="h:mm:ss a">[{{todayDate | date:'h:mm:ss a'}}]</option> <option value="EEEE, MMMM d, yyyy hh:mm:ss a">[{{todayDate | date:'EEEE, MMMM d, yyyy hh:mm:ss a'}}]</option> <option value="MMMM yyyy">[{{todayDate | date:'MMMM yyyy'}}]</option> </select> 
3