【问题标题】:Date difference showing wrong result :past feb 2021 why?显示错误结果的日期差异:2021 年 2 月过去,为什么?
【发布时间】:2021-05-10 11:06:11
【问题描述】:
var d1 = new Date("05/02/2021");   
var d2 = new Date("31/12/2021");   
    
var diff = d2.getTime() - d1.getTime();   
    
var daydiff = diff / (1000 * 60 * 60 * 24);  

这里的日期差是 332 而它是 329... 有什么原因吗?

【问题讨论】:

  • d2 是无效的日期,你应该有格式MM/DD/YYYY
  • 当我将日期转换为mm/dd/yyyy 时,我得到了预期的 329
  • @DominikMatis 是的,如果返回时返回null,而你的@yusuffk 你的最终变量返回NaN
  • @Nick 我有 243,当我将日期转换为 mm/dd/yyyy
  • 您是否也转换了第一个日期?应该是02/05/2021

标签: javascript jquery date time locale


【解决方案1】:

const date1 = new Date('2/05/2021');
const date2 = new Date('12/31/2021');
const diffTime = Math.abs(date2 - date1);
const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24)); 
console.log(diffTime + " milliseconds");
console.log(diffDays + " days");

尝试更改日期的格式

const date1 = new Date('2/05/2021');
const date2 = new Date('12/31/2021');
const diffTime = Math.abs(date2 - date1);
const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24)); 
console.log(diffTime + " milliseconds");
console.log(diffDays + " days");

希望,这可以解决您的问题。

【讨论】:

    猜你喜欢
    • 2021-08-21
    • 1970-01-01
    • 2016-03-22
    • 1970-01-01
    • 2018-04-24
    • 1970-01-01
    • 2016-07-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多