Javascript 如何扩展Date类
我正在制作angular2应用程序,我从控制器返回的所有日期都是这种格式的“2017-02-2700:00:00”。我想扩展js Date对象,以便在创建新对象时从字符串中删除T,它仍然充当日期对象。我目前试图实现这一目标的方法是行不通的。我创建的扩展日期对象的IDate对象只是显示为null对象,而不是日期对象。任何人都知道发生了什么以及如何修复它。如果不能用typescript完成,我愿意用es6js代替typescript。我看到了关于扩展Date对象的问题,但这会修改Date对象,我希望有一个名为IDate的对象,它与Date相同,但还有一些方法。如果这是唯一的办法,我会记下答案Javascript 如何扩展Date类,javascript,angular,date,typescript,Javascript,Angular,Date,Typescript,我正在制作angular2应用程序,我从控制器返回的所有日期都是这种格式的“2017-02-2700:00:00”。我想扩展js Date对象,以便在创建新对象时从字符串中删除T,它仍然充当日期对象。我目前试图实现这一目标的方法是行不通的。我创建的扩展日期对象的IDate对象只是显示为null对象,而不是日期对象。任何人都知道发生了什么以及如何修复它。如果不能用typescript完成,我愿意用es6js代替typescript。我看到了关于扩展Date对象的问题,但这会修改Date对象,我希望
export class IDate extends Date {
constructor() {
super();
}
value;
toDate(value: string): Date {
value.replace("T", " ");
return new Date(value);
}
getvalue() {
return this.value;
}
}
let t = new IDate();
let d = new Date();
console.log(t);
console.log(d);
控制台
IDate {}
Fri Mar 31 2017 11:53:59 GMT-0500 (Central Daylight Time)
如果您的目标是
es6
,如果无法将es6作为目标,则需要解决以下问题: 更多信息:
虽然不是所有这些都在谈论延长日期,但问题仍然完全一样。可能的重复你能省去你自己的头疼,只使用像
momentjs
这样的东西吗?@Pytth,不,我不能:(