繁体   English   中英

使用JavaScript获取给定月份x天的最后日期

[英]Get last date for x day of a given month in Javascript

我一直在尝试找出如何在不使用循环的情况下在JavaScript中获取一个月的最后x天的日期。 我确定它与使用模运算符有关,但我不能完全理解公式:-(

因此,例如,本月(06/2013)的最后一个星期一的日期为24日。

谁能对此有所启发? 真让我发疯!

提前致谢。

编辑

我想我现在可以正常工作了,这要归功于看看date.js ,我非常接近我所拥有的!

function getLastDay(year, month, dayOfWeek)
{
    var d = new Date(year, month, 0);
    var diff = (dayOfWeek - d.getDay() + 7 * -1) % 7;

    return new Date(year, month-1, d.getDate() + diff);
}

// Last Monday in for January 2013
getLastDay(2013, 1, 1); // Mon Jan 28 2013 00:00:00 GMT+0000 (GMT Standard Time)

抱歉,一开始误读您的问题。 编辑我的回复。

如果您愿意使用库,请尝试使用date.js。

您可以将moveToNthOccurence与-1一起使用来获取该月某天的最后一次出现。

所以:

Date.today().moveToNthOccurrence(1, -1)

应该给你这个月的最后一个星期一。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM