如何计算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
答案 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'));