如何在JavaScript中计算2个日期之间的日期名称数量
我有2个日期选择器和星期几的复选框列表。 用户可以选择开始日期或结束日期并选中任何复选框日期。 我想要计算两天之间的星期数。
例如:我想加入任何瑜伽班,然后我会选择开始或结束日期,并选择星期一,星期二等星期几。
现在我想要计算两个日期之间的所有星期一和星期二的数量
date1 = Mar 01,2016
date2 = Apr 01,2016
我想要计算这些日期之间的日期名称数目,如下所示:
周日没有:4
周一没有:4
周二没有:5等。
我试过这段代码
var d = new Date(date1);
var now = new Date(Date.now());
var daysOfYear = [];
count = 0;
for (d ; d <= date1 ; d.setDate(d.getDate() + 1)) {
val = $("#ch_"+d.getDay());
if(val.is(':checked')){
count++;
}
}
但它给了一个TypeError: d.getDay is not a function
您需要在日期之间进行迭代并检查日期
首先将日期转换为日期对象
date1 = convertToDateObj(date1); //assuming you already have a way to parse this string to date
date2 = convertToDateObj(date2); //assuming you already have a way to parse this string to date
现在迭代它们
var dayCount = {0:0,1:0,2:0,3:0,4:0,5:0,6:0}; //0 is sunday and 6 is saturday
for (var d = date1; d <= date2; d.setDate(d.getDate() + 1))
{
dayCount[d.getDay()]++;
}
console.log(dayCount);
链接地址: http://www.djcxy.com/p/6249.html
上一篇: How to calculate number of day name between 2 dates in javascript
下一篇: Fractional Number of Days between DateTime objects in Java