时间切换,前一天,后一天

效果展示: 

方案一:

/**
     * 日期左右切换
     */
    getCurrentDate: function (_num) {
        const time = new Date();
        let args = {
            y: time.getFullYear(),
            M: time.getMonth() + 1,
            d: time.getDate() + _num,
            h: time.getHours(),
            m: time.getMinutes(),
            s: '00'
        };

        /**
         * 如果后一天大于此月最后一天
         * 月+1;日=1
         * 年+1;月=1,日=1
         */
        if (args.d > new Date(args.y, (args.M + 1), 0).getDate()) {
            args.M += 1
            args.d = 0o1
        }
        if (args.M > 12) {
            args.y += 1
            args.M = 1
            args.d = 0o1
        }
        /**
         * 如果前一天
         * 月-1;日=前一个月总天数。判断点击“前一天”count数
         * 年-1;月=1,日=1
         */
        if (args.d <= 0) {
            args.M -= 1
            args.d = new Date(args.y, (args.M), 0).getDate()
            if (mainYumingWeather.count < -1) {
                return args.y + '-' + args.M + '-' + (args.d + mainYumingWeather.count + 1)
            }
        }
        console.log('日期>>>',args.y + '-' + args.M + '-' + args.d);
        return args.y + '-' + args.M + '-' + args.d;
    },

方案二:

 /**
     * 获取当前时间向前后多少天的日期选择
     */
    getDateHtml: function (start, end, nowDay, itemClass) {
        let zhou = ["周日", "周一", "周二", "周三", "周四", "周五", "周六"];
        let content = [];
        for (var i = start; i < end; i++) {
            let time = new Date()
            time.setDate(time.getDate() + i);
            let args = {
                y: time.getFullYear(),
                M: time.getMonth() + 1,
                d: time.getDate()
            };
            if (args.M < 10) {
                args.M = "0" + args.M
            }
            if (args.d < 10) {
                args.d = "0" + args.d
            }
            let riqi = args.y + "-" + args.M + "-" + args.d;
            let jinri = riqi == nowDay;
            content.push(`
                    
  • ${args.M+"-"+args.d}

    ${jinri ?"今日":zhou[time.getDay()]}

  • `) } return content },

    核心代码:

    时间切换,前一天,后一天_第1张图片

    理论知识:

    new Date()的set方法 

     

    你可能感兴趣的:(javascript,javascript)