gpt4 book ai didi

javascript - 时刻JS : Difference of days ignoring the year

转载 作者:行者123 更新时间:2023-12-02 14:40:30 25 4
gpt4 key购买 nike

我熟悉如何在给定两个时刻对象 a 和 b 的情况下查找两个日期的差异:

let diffDays = a.diff(b, 'days');

我遇到的问题是忽略了年份。我只希望时刻 a 和 b 找出天数的差异,而不管它是哪一年。

示例:

a = June 1, 2015
b = June 5, 1992 //desired outcome 4. Not 4 + 4*365

let diffDays = a.diff(b, 'days')

我该如何解决这个问题?

更新

破坏大多数答案的场景如下:

let c = moment( "January 5, 2015" );
let d = moment( "December 25" ).year( c.year() );
console.log(Math.abs( c.diff( d, 'days' ) ));

输出:354期望:11

将年份设置为相同的年份似乎会引起问题。有什么解决办法吗?

最佳答案

手动实例化另一个 momentjs 实例,仅重用第一个日期的月份和日期,但重用第二个日期的年份。然后调用您的 diff 方法。

var a = moment( "June 1, 2015" ),
b = moment( "June 5, 1992" ),
origDiff = Math.abs( a.diff( b, 'days' ) ),
finalDiff;

if ( origDiff < 60 ) {

finalDiff = origDiff;

} else {

b.year( a.year() );
finalDiff = Math.abs( a.diff( b, 'days' ) );
}

关于javascript - 时刻JS : Difference of days ignoring the year,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37039208/

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