获得下周一周一和周五

时间:2014-12-10 14:32:04

标签: javascript date

我需要你的帮助。

以下当前代码可以计算从给定日期开始的一个星期,一周(7天)。

我想对其进行修改,以便今天的日期计算下一周的日期(星期一和星期五)。

IE中。今天的日期是:12/10/2014(mm / dd / yyyy)

下周一是:2014年12月15日

下周五是:2014年12月19日

function nextweek() {

    var currentDate = new Date();

    var w = new Date(currentDate.getTime() + 7 * 24 * 60 * 60 * 1000);

    var dd = w.getDate()

    var mm = w.getMonth() + 1

    var yyyy = w.getFullYear()

    return mm + '/' + dd + '/' + yyyy

}

2 个答案:

答案 0 :(得分:1)

这里有一些代码片段适用于我前段时间看到的类似问题(无法记住确切的来源,这是关于当周的星期一)



Date.prototype.getNextWeekMonday = function() {
    var d = new Date(this.getTime());
    var diff = d.getDate() - d.getDay() + 1;
    if (d.getDay() == 0)
        diff -= 7;
    diff += 7; // ugly hack to get next monday instead of current one
    return new Date(d.setDate(diff));
};

Date.prototype.getNextWeekFriday = function() {
    var d = this.getNextWeekMonday();
    return new Date(d.setDate(d.getDate() + 4));
};

// You can then use it like this :

var date = new Date();
alert(date.getNextWeekMonday());
alert(date.getNextWeekFriday());




应该在敏感的日子(星期日和星期一)进行测试,以确保它从正确的一周返回星期一和星期五。

答案 1 :(得分:0)

这只是向HTML添加了一个元素,但我们还可以在文本字段中提供用户可以提供所需日期,通过event handling处理该输入并显示NextMonday

<html>
<head><title>DATE EXAMPLE</title></head>
<body>
<div id="date">

</div>
<script type="text/javascript">
    var date = new Date("12/10/2014");
    var divElement = document.getElementById("date");
    divElement.appendChild(document.createTextNode(""));
    var nextMonday = new Date(date.getMonth() + "/" + parseInt(date.getDate() + 7 - date.getDay() + 1) + "/"+ date.getFullYear());
    var newDate = new Date
    divElement.firstChild.nodeValue = nextMonday;
</script>
</body>
</html>

获得NextFriday可以用类似的方法完成。