js选中起始时间使用标准时间毫秒值计算一年后的当前少一天的日期

实际代码里面带入默认日期’20230301’这个特殊日期,因为下一年当前日期少一天为闰年的2月会有29天,使用特殊校验代码效果图

在这里插入图片描述

在这里插入图片描述

HTML部分代码

<el-button @click="chengTime()" type="warning">按钮</el-button>
<el-button @click="chengTimes()" type="info">按钮</el-button>

JS部分代码

            // 将毫秒值时间转化为标准时间格式方法
            dateFormat(val){
                 let date=new Date(val);
                 let y=date.getFullYear();
                 let m=date.getMonth()+1;
                 m=m<10?'0'+m:m;
                 let d=date.getDate();
                 d=d<10?'0'+d:d;
                 let time=y+'-'+m+'-'+d;
                 return time
            },
            // 第一种方法获取开始时间计算一年后的当前时间少一天的日期
            chengTime(){
                  let timeList=[]
                  let nowtime='20230301' // 这里专门挑选了闰年2月最后一天的特殊数据进行测试
                  let nowyear=Number(nowtime.substring(0,4))+1
                  let nowmonth=nowtime.substring(4,6)
                  let nowday=nowtime.substring(6,8)
                  if(nowmonth=='02'&amp;&amp;nowday=='29'){
                    nowmonth='03';
                    nowday='01'
                  }
                  timeList.push((nowyear+''));
                  timeList.push(nowmonth);
                  timeList.push(nowday);
                  let timeStr=timeList[0]+'-'+timeList[1]+'-'+timeList[2]
                  let oldtime=new Date(timeStr).getTime()-3600*24*1000
                  let formattedTime=this.dateFormat(oldtime).replace("-", "").replace("-", "")
                  this.$message({
                        message: `按钮一的值,${formattedTime}`,
                        type: 'success'
                  })
            },
            // 第二种方法获取开始时间计算一年后的当前时间少一天的日期
            chengTimes(){
                  let nowtime='20230301' // 这里专门挑选了闰年2月最后一天的特殊数据进行测试
                  let nowyear=Number(nowtime.substring(0,4))+1;  // 年份上加上1获取一年的年数据
                  let nowmonth=parseInt(nowtime.substring(4,6))-1; // 根据new Date()获取时间数据方法,传入的月份需要减去1
                  let nowday=parseInt(nowtime.substring(6,8))-1;// 天数上减去1获取少一天的数据
                  let formattedTime=this.dateFormat(new Date(nowyear,nowmonth,nowday)).replace("-", "").replace("-", "")
                  this.$message({
                        message: `按钮二的值,${formattedTime}`,
                        type: 'error'
                  })
            }

需要注意的是:方法一在实际使用需要考虑浏览器对于原生JS的支持版本,我在实际使用发现低版本的好像不兼容使用方法二的话就兼容性更好,更推荐使用方法二去获取一年当前日期少一天的日期数据

原文地址:https://blog.csdn.net/m0_46577631/article/details/134776342

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_46766.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注