gpt4 book ai didi

javascript - 如何获取两个日期之间的确切月份数?

转载 作者:行者123 更新时间:2023-12-02 23:11:00 25 4
gpt4 key购买 nike

我正在尝试获取两个日期之间的月份数

但由于某种原因, moment diff 方法有时返回正确的数字,有时返回错误的数字(一个月),(取决于我猜测的日期)

        var estDate = "some date"; //2022-06-02
estDate = estDate.toString();
var estDateYear = estDate.substring(0,4);
var estDateMonth = estDate.substring(4, 6);
var estDateDay = estDate.substring(6, 8);

estDate = estDateYear + '-' + estDateMonth + '-' + estDateDay;

//first date
estDate = moment(estDate);


//actual date
var date = moment();


//DIFF
var diff= date.diff(estDate, 'month');
diff= diff.toString();

知道为什么会发生这种情况吗?

最佳答案

您应该将 diff 方法中的第三个参数设置为 true。这将返回一个月的小数而不是整数。然后,您可以根据需要舍入以返回您想要的数字。

var diff = Math.floor(date.diff(estDate, 'month', true));

文档
https://momentjs.com/docs/#/displaying/difference/
默认情况下,moment#diff 会将结果 chop 至小数点后零位,返回一个整数。如果您想要 float ,请传递 true 作为第三个参数。

关于javascript - 如何获取两个日期之间的确切月份数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57362996/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com