如何正确计算typescript日期的月差
首先:我正在研究Angular 7 假设我有一个数字X,例如我每月必须支付的费率。因此,在给定的两个日期上,我想计算一下我要为给定的时间跨度支付多少钱。也许是一个更为紧张的例子: 假设我的费率是如何正确计算typescript日期的月差,typescript,date,Typescript,Date,首先:我正在研究Angular 7 假设我有一个数字X,例如我每月必须支付的费率。因此,在给定的两个日期上,我想计算一下我要为给定的时间跨度支付多少钱。也许是一个更为紧张的例子: 假设我的费率是10.00 我的startDate是2018-12-01而我的endDate是2018-12-31,我需要计算1*10.00=10.00。 在这样做时,我将假设我只查看“整月”,因此不能输入2018-12-13的结束日期,只需2018-12-31,2019-01-31或2019-02-28(或ofc.20
10.00
我的startDate
是2018-12-01
而我的endDate
是2018-12-31
,我需要计算1*10.00=10.00
。
在这样做时,我将假设我只查看“整月”,因此不能输入2018-12-13的结束日期,只需2018-12-31
,2019-01-31
或2019-02-28
(或ofc.2019-02-29
)
我无法让它工作(遗憾的是),所以我环顾四周,陷入了这种方法:
monthDiff(d1: Date, d2: Date): number {
let months;
months = (d2.getFullYear() - d1.getFullYear()) * 12;
months -= d1.getMonth() + 1;
months += d2.getMonth();
return months <= 0 ? 0 : months;
}
monthDiff(d1:日期,d2:日期):编号{
让我们几个月;
月份=(d2.getFullYear()-d1.getFullYear())*12;
月份-=d1.getMonth()+1;
月份+=d2.getMonth();
return months我强烈建议使用moment.js处理日期。
请参阅链接:
我认为它是当今处理日期最常用的js库。
看看它,你会发现它很容易使用
我希望这能有所帮助
谢谢大家!