如何计算javascript中两个日期之间的天数? (没有年份)

时间:2017-11-20 22:33:02

标签: javascript date

如何计算javascript中两个日期之间的天数? (没有几年只有每年的月和日)

例如:Mai 6(没有2017年)到11月7日(没有2017年)DAY:1,DAY:2,DAY:3 .....和11月8日(没有2017年)到Mai 5明年(没有2018年) )DAY:1,DAY:2,DAY:3 .....我有这个代码,但只计算今年的天数而不是从11月8日到明年Mai 5

1 个答案:

答案 0 :(得分:-1)

var day=1000*60*60*24;
var d1 = Date.parse('Jan 1');
var d2 = Date.parse('Jun 30');

var diff = d2 - d1;
Math.round(diff/day)

您正在寻找Date.parse函数。

看一看如何在没有一年过去的情况下处理它。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/parse

编辑:

这是一个附加当前年份并解析日期的函数。这不是应该投入生产的代码,因为日期格式的最微小变化会破坏它。但为了保存错误的解决方案,我建议尝试使用它:

function getDays(strDay1, strDay2){
  var day=1000*60*60*24;

  strDay1 = strDay1 + ' ' + (new Date().getFullYear());
  strDay2 = strDay2 + ' ' + (new Date().getFullYear());

  var d1 = Date.parse(strDay1);
  var d2 = Date.parse(strDay2);

  var diff = d2 - d1;
  return Math.round(diff/day)
}

alert(getDays('Jan 1', 'Jun 30'));