题 如何在Angular2 \ Typescript中将字符串转换为日期? [重复]


这个问题在这里已有答案:

我想创建一个具有特定日期的新Date对象。 我想过将它从特定的字符串转换,例如:

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

如何将其转换为日期对象 在打字稿中

更新:

我在寻求解决方案 在打字稿中 而不是在Javascript和in Angular2,而不是AngularJS(1.x)


18
2018-04-04 08:42


起源


@AravindSivam我问打字稿,而不是javascript - cookya
@GünterZöchbauer我试过,没找到任何相关的(显然) - cookya
@GünterZöchbauer请注意我要求在Angular2的Typescript(而不是Javascript)中使用解决方案(而不是AngularJS 1.x,这是非常不同的)。您可以在问题标题或我的更新中阅读它。 - cookya
JavaScript是TypeScript的子集。并非所有事情都需要因为你使用TypeScript而有所不同;-) - Günter Zöchbauer
@cookya Typescript是javascript的超集。打字稿没有单独的方法 - Aravind Sivam


答案:


您可以使用日期过滤器转换日期并以特定格式显示。

在.ts文件(typescript)中:

let dateString = '1968-11-16T00:00:00' 
let newDate = new Date(dateString);

在HTML中:

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

以下是您可以实现的一些格式:

后端:

public todayDate = new Date(Date.parse(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>      


81
2018-04-04 08:45



完美的解决方案感谢好友,它对我有用。 - Ghanshyam Lakhani