我有2个类型为Date的变量,我需要减去它们。 有没有针对此的方法?或者我需要创建自己的方法吗?
我已经尝试过了:
test: Date = new Date();
var1: Date = new Date('20-08-2018');
var2: Date = new Date('15-08-2018');
testsubstract() {
this.test = this.var1 - this.var2;
return this.test;
}
但是我收到一条错误消息,提示“类型编号不可分配给日期类型”
答案 0 :(得分:0)
这是由于以下事实:相减会得出一个数字,因此它会报告错误为Type number is not assignable to type Date
。
因此可以使用以下代码将测试分配为数字类型:-
test: number;
var1: Date = new Date('20-08-2018');
var2: Date = new Date('15-08-2018');
testsubstract() {
this.test = this.var1 - this.var2;
return this.test;
}
或将减法转换为日期,如下所示:-
test: Date = new Date();
var1: Date = new Date('20-08-2018');
var2: Date = new Date('15-08-2018');
testsubstract() {
this.test = new Date(this.var1 - this.var2);
return this.test;
}
答案 1 :(得分:0)
this.test = this.var1 - this.var2;
当您减去两个日期时,结果将以毫秒为单位,这就是您收到错误的原因。如果您希望获得经过的时间,也许以下链接会有所帮助。
Javascript show milliseconds as days:hours:mins without seconds