javascript 获取某日期所在周的周一并格式化

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 获取某日期所在周的周一并格式化相关的知识,希望对你有一定的参考价值。

function GetMonday(dd) {
    var week = dd.getDay(); //获取时间的星期数
    var minus = week ? week - 1 : 6;
    dd.setDate(dd.getDate() - minus); //获取minus天前的日期 
    var y = dd.getFullYear();
    var m = dd.getMonth() + 1; //获取月份 
    var d = dd.getDate();
    return new Date(y + "-" + m + "-" + d).Format("yyyy-MM-dd");
}
// 对Date的扩展,将 Date 转化为指定格式的String
// 月(M)、日(d)、小时(h)、分(m)、秒(s)、季度(q) 可以用 1-2 个占位符, 
// 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字) 
// 例子: 
// (new Date()).Format("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423 
// (new Date()).Format("yyyy-M-d h:m:s.S")      ==> 2006-7-2 8:9:4.18 
Date.prototype.Format = function (fmt) {  
    var o = {
        "M+": this.getMonth() + 1, //月份 
        "d+": this.getDate(), //日 
        "h+": this.getHours(), //小时 
        "m+": this.getMinutes(), //分 
        "s+": this.getSeconds(), //秒 
        "q+": Math.floor((this.getMonth() + 3) / 3), //季度 
        "S": this.getMilliseconds() //毫秒 
    };
    if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
    for (var k in o)
    if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
    return fmt;
}

以上是关于javascript 获取某日期所在周的周一并格式化的主要内容,如果未能解决你的问题,请参考以下文章

Java日期查询

java 获取某一月的所有周的日期段(周一到周日)

java 分别获取当前时间的年月日以及当前时间所在周的周一周末日期

java 分别获取当前时间的年月日以及当前时间所在周的周一周末日期

获取某一天所在周的开始日期和结束日期

javascript 实现 传入周数,获取当前周的日期,周一到周天的年月日