如果要考虑二月份的情况,就需要注意闰年和平年的区别。闰年的二月份有29天,平年的二月份只有28天。

以下是一种考虑闰年和平年的实现方法:

//获取指定日期的前一年getYearLast(dateStr) {// 假设要获取的日期为dateStr,格式为"YYYY-MM-DD"console.log(dateStr);let date = new Date(dateStr);let lastYear = date.getFullYear() - 1; // 获取前一年的年份let newMonth = date.getMonth(); // 新日期的月份let newDate; // 新日期的日期// 判断原日期的月份是否为2月份if (date.getMonth() === 1) { // 2月份// 判断前一年是否为闰年if (lastYear % 4 === 0 && lastYear % 100 !== 0 || lastYear % 400 === 0) { // 闰年newDate = Math.min(date.getDate(), 29); // 新日期的日期最大为29} else { // 平年newDate = Math.min(date.getDate(), 28); // 新日期的日期最大为28}} else { // 非2月份newDate = date.getDate(); // 新日期的日期为原日期的日期}let newDateStr = lastYear + "-" + (newMonth + 1) + "-" + newDate; // 格式化日期字符串return newDateStr}

调用:

//调用,输出2021-7-20
let date=this.getYearLast("2022-7-20");
console.log(date);

js获取指定日期的前一年(需要判断闰年和平年)相关推荐

  1. JS获取指定日期前后N天的日期、前N个月日期、后N个月日期

    今天做项目遇到了,获取相对于当前日期前30天的时间,结合网上资料,做了一份整理. 一.获取指定日期前或者后指定间隔时间代码 function getNowFormatDate(sdate,interv ...

  2. JavaScript JS获取指定日期的前几天或者后几天(默认后1天)

    /**  * JavaScript 获取指定日期的前几天或者后几天的日期  * @param date {string} 日期 如:2022-07-12  * @param day {number} ...

  3. JS 获取指定日期的前几天或者几天

    例如获取2021-06-21后1天日期 /*** JavaScript 获取指定日期的前几天或者后几天的日期* @param date {string} 日期 如:2021-06-21* @param ...

  4. js 获取指定日期的前几天日期或后几天日期

    参数说明:fromDate是"yyyy-MM-dd"的日期格式,为指定日期,例如'2014-10-10' dayInterval表示间隔天数,间隔天数大于0,则得到比指定日期大da ...

  5. php获取本月工作日,ThinkPHP中获取指定日期后工作日的具体日期方法

    ThinkPHP中获取指定日期后工作日的具体日期方法 来源:中文源码网    浏览: 次    日期:2019年11月5日 [下载文档:  ThinkPHP中获取指定日期后工作日的具体日期方法.txt ...

  6. php获取工作日时间,ThinkPHP中获取指定日期后工作日的具体日期方法

    思路: 1.获取到查询年份内所有工作日数据数组 2.获取到查询开始日期在工作日的索引 3.计算需查询日期索引 4.获得查询日期 /*创建日期类型记录表格*/ CREATE TABLE `tb_work ...

  7. java获取指定日期的所在周的第一天(周一)

    java获取指定日期的所在周的第一天(周一) private static void getWeekByDate(Date time) {SimpleDateFormat sdf = new Simp ...

  8. java获取工作日 日历接口_节假日api接口之获取指定日期的节假日信息

    获取指定日期的节假日信息 1.接口地址:http://api.goseek.cn/Tools/holiday?date=数字日期 2.返回数据: 3.节假日数据说明:本接口包含2017年起的中国法定节 ...

  9. Java获取指定日期前一天、后一天,当月第一天、当月最后一天

    文章目录 一.获取指定日期的前一天.后一天的时间 拿到今天的前一天.后一天 获取指定日期的前一天 获取指定日期的后一天 二.日期格式转换:yyyy-MM转为yyyyMM 三.自然月计算 获取 [ 当月 ...

最新文章

  1. setting.xml的mirror、mirrorOf和pom.xml的repositories、repository的关系关联*
  2. JavaScript / HTML5中的音效
  3. hibernate的native sql查询
  4. JVM-剖析对象内存分配流程
  5. php记录代码执行时间
  6. layuiajax提交表单控制层代码_漏洞预警|ThinkPHP 5.0 远程代码执行
  7. C java new_你还在new对象吗?Java8通用Builder了解一下?
  8. 在Scala中评估val,var,lazy val和def构造时
  9. HDU2833 最短路 floyd
  10. 电子商务师四级证书理论题库
  11. Nginx从入门到精通
  12. 工作笔记-thingworx连接mongdb
  13. [艾兰岛]制作传送门之boss技能——kura酱长期更新
  14. 瑞星谷歌合作推免费杀毒软件
  15. CHROME扩展笔记之webRequest·图片拦截
  16. 基于STM32单片机的跑步机心率检测proteus仿真原理图PCB
  17. Android Proguard 不混淆所有第三方jar(忽略配置设置)
  18. linux服务器下搭建svn服务器仓库
  19. JAVA日期格式化常用格式对照表
  20. 科技感满满 《复联3》灭霸原来是这样做出来的

热门文章

  1. 致远SPM解决方案之工会管理
  2. php简历模板技能专长,php简历技能怎么写
  3. python唯美壁纸_一键下载5K超清分辨率唯美壁纸(包含多种类型)
  4. 2020信息通信产业十大技术趋势发布
  5. sublime常用快键键
  6. 阿里笔试测评考什么?
  7. 数据库 | MySQL 5.7 安装教程及卸载教程【附安装包】
  8. L1-070 吃火锅 (15 分)
  9. Linux如何利用宝塔部署电影网站
  10. vue3 setup 怎么获取vue实例上的全局变量