方法一: 通过时间戳计算
const computer_days = (start, end) => Math.ceil(Math.abs(start-end) / 86400000); // 日期之间的天数
console.log(computer_days(start, end));
//案例:
let a = computer_days(1677463636960, 1678068436960) //
//结果:a = 7
方法二: 通过日期计算
const computer_days = (start, end) => Math.ceil(Math.abs(start-end) / 86400000); // 日期之间的天数
console.log(computer_days(new Date(start), new Date(end));
//案例:
let a = computer_days(new Date('2023-02-27'), new Date('2023-03-06')) // 这里就是两者的区别
//结果:a = 7
new Date('2023-03-06')作用是转换成标准时间,再进行计算的,而不是转换为字符串在进行计算,切记啊!!
总结:
代码看起来只是传值的时候不一样;而实际转换时有区别

文章介绍了两种在JavaScript中计算两个日期之间天数差的方法:一是直接使用时间戳,二是通过创建Date对象。两种方法的核心都是将时间间隔转换为毫秒然后除以一天的毫秒数,但后者确保了日期的正确解析。关键在于是否将输入转换为Date对象进行计算。


被折叠的 条评论
为什么被折叠?



