js实现获取当前时间是本月第几周和年的第几周的方法

获取本月第几周

function getMonthWeek(a, b, c) {
            /**
        * a = d = 当前日期
        * b = 6 - w = 当前周的还有几天过完(不算今天)
        * a + b 的和在除以7 就是当天是当前月份的第几周
        */
        var date = new Date(a, parseInt(b) - 1, c),
            w = date.getDay(),
            d = date.getDate();
        if(w==0){
            w=7;
        }
        var config={
            getMonth:date.getMonth()+1,
            getYear:date.getFullYear(),
            getWeek:Math.ceil((d + 6 - w) / 7),
        }
        return config;
    };
    var getDate=getMonthWeek("2018", "12", "31");
    console.log("今天是 " + getDate.getYear + " 年的第 "+ getDate.getMonth + " 月的第 " + getDate.getWeek + " 周");

获取本年第几周

function getYearWeek (a, b, c) {//a为年 b为月 c为日
    /*  
    date1是当前日期  
    date2是当年第一天  
    d是当前日期是今年第多少天  
    用d + 当前年的第一天的周差距的和在除以7就是本年第几周  
    */
        var date1 = new Date(a, parseInt(b) - 1, c),
            date2 = new Date(a, 0, 1),
            d = Math.round((date1.valueOf() - date2.valueOf()) / 86400000);
        return Math.ceil((d + ((date2.getDay() + 1) - 1)) / 7);
};

结果如下

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值