• js 筛选时间(本年、本月、本季等)


    js 筛选时间(本年、本月、本季等)

    //获取近len天
                    $getday(len) {
                        let days = [];
                        var date = new Date();
                        for(let i=0; i<=24*(len-1);i+=24){        //今天加上前len-1天
                            let ob = date.getTime() - i * 60 * 60 * 1000
                            let dateItem=new Date(ob);    //使用当天时间戳减去以前的时间毫秒(小时*分*秒*毫秒)
                            let y = dateItem.getFullYear();    //获取年份
                            let m = dateItem.getMonth() + 1;    //获取月份js月份从0开始,需要+1
                            let d= dateItem.getDate();    //获取日期
                            m = this.$lessTen(m);    //给为单数的月份补零
                            d = this.$lessTen(d);    //给为单数的日期补零
                            let valueItem= y + '-' + m + '-' + d;    //组合
                            days.push(valueItem);    //添加至数组
                        }
                        let str = days[days.length-1] + ' 00:00:00:::' + days[0] + ' 23:59:59';
                    
                        return str;        
                    },
                    // 小于10 前面加 0
                    $lessTen(num) {
                        let str = 0;
                        if (Number(num) < 10) {
                            str = '0' + num;
                        } else {
                            str = '' + num;
                        }
                        return str;
                    },
                    
                    // 筛选时间
                    $initDateTime(type) {
                        // type  1: 本周    2 本月        3 本季        4 本年    5  近7天    6 近30天    7 近90天
                        let now = new Date();
                        let str = '';
                        let y = now.getFullYear();
                        let m = now.getMonth() + 1;
                        let d = now.getDate();
                        switch (type) {
                            case 1:
                                let weekFirstDay = new Date(now - (now.getDay() - 1) * 86400000);
                                let firstMonth = Number(weekFirstDay.getMonth()) + 1;
                                str = weekFirstDay.getFullYear() + '-' + this.$lessTen(firstMonth) + '-' + this
                                    .$lessTen(weekFirstDay.getDate()) + ' 00:00:00:::' + y + '-' + this.$lessTen(
                                    m) + '-' + this.$lessTen(d) + ' 23:59:59';
                                break;
                            case 2:
                                str = y + '-' + this.$lessTen(m) + '-01 00:00:00:::' + y + '-' + this.$lessTen(m) +
                                    '-' + this.$lessTen(d) + ' 23:59:59';
                                break;
                            case 3:
                                if (m < 4) {
                                    str = y + '-01-01 00:00:00:::' + y + '-' + this.$lessTen(m) + '-' + this
                                        .$lessTen(d) + ' 23:59:59';
                                } else if (m < 7) {
                                    str = y + '-04-01 00:00:00:::' + y + '-' + this.$lessTen(m) + '-' + this
                                        .$lessTen(d) + ' 23:59:59';
                                } else if (m < 10) {
                                    str = y + '-07-01 00:00:00:::' + y + '-' + this.$lessTen(m) + '-' + this
                                        .$lessTen(d) + ' 23:59:59';
                                } else {
                                    str = y + '-10-01 00:00:00:::' + y + '-' + this.$lessTen(m) + '-' + this
                                        .$lessTen(d) + ' 23:59:59';
                                }
                                break;
                            case 4:
                                str = y + '-01-01 00:00:00:::' + y + '-' + this.$lessTen(m) + '-' + this.$lessTen(
                                    d) + ' 23:59:59';
                                break;
                            case 5:
                                str = this.$getday(7);
                                break;
                            case 6:
                                str = this.$getday(30);
                                break;
                            case 7:
                                str = this.$getday(90);
                                break;
                            default:
                                str = '';
                        };
                        return str;
                    }
  • 相关阅读:
    [SDOI2009]生日礼物(单调队列)
    [luogu1638]逛画展(单调队列)
    【最短路】·SPFA算法实现
    [UVA10474]大理石在哪儿
    【转载】C++中string erase函数的使用
    【转载】高精度减法的OP写法
    【转载】ST表
    串门赛: NOIP2016模拟赛——By Marvolo 丢脸记
    Bzoj 3813 奇数国 题解 数论+线段树+状压
    Bzoj 2064 分裂 题解
  • 原文地址:https://www.cnblogs.com/wangyihong/p/16285072.html
Copyright © 2020-2023  润新知