获取上周Javascript的开始日期和上次日期

时间:2012-07-11 11:03:02

标签: javascript

  

可能重复:
  Get first and last day of the week in JavaScript

任何机构可以通过向今天的日期提供日期来建议我如何获得上周的开始日期和结束日期吗?

3 个答案:

答案 0 :(得分:7)

以下是工作代码!希望这可以帮助任何人......!

    var d = new Date();
        var to = d.setTime(d.getTime() - (d.getDay() ? d.getDay() : 7) * 24 * 60 * 60 * 1000);
        var from = d.setTime(d.getTime() - 6 * 24 * 60 * 60 * 1000);
alert(to);
alert(from);

答案 1 :(得分:0)

获取本月的最后一天:

/**
 * Accepts either zero, one, or two parameters.
 *     If zero parameters: defaults to today's date
 *     If one parameter: Date object
 *     If two parameters: year, (zero-based) month
 */
function getLastDay() {
    var year, month;
    var lastDay = new Date();

    if (arguments.length == 1) {
        lastDay = arguments[0];
    } else if (arguments.length > 0) {
        lastDay.setYear(arguments[0]);
        lastDay.setMonth(arguments[1]);
    }

    lastDay.setMonth(lastDay.getMonth() + 1);
    lastDay.setDate(0);

    return lastDay;
}

获取上周一:

/**
 * Accepts same parameters as getLastDay()
 */
function getLastMonday() {
    var lastMonday = getLastDay.apply(this, arguments);
    lastMonday.setDate(lastMonday.getDate() - (lastMonday.getDay() == 0 ? 6 : (lastMonday.getDay() - 1)));
    return lastMonday;
}

现在你可以做你的工作

/**
 * Accepts one parameter: Date object.
 * Assumes start of week is Sunday.
 */
function getWeek(d) {
    var jan1 = new Date(d.getFullYear(), 0, 1);
    return Math.ceil((((d - jan1) / (24 * 60 * 60 * 1000)) + jan1.getDay() + 1) / 7);
}

然后使用

// Get the last week of this month:
var lastWeekThisMonth = getWeek(getLastDay());
Alert("lastWeekThisMonth: %s", lastWeekThisMonth);

答案 2 :(得分:-1)

您可以使用Date.js

 Date.today().previous().monday()

可能对你有用。