/**
* 获取几天之前日期
*/
daysAgo(dayNum = 0) {
let myDate = new Date()
let lw = new Date(myDate - 1000 * 60 * 60 * 24 * dayNum) // 最后一个数字多少天前的意思
let lastY = lw.getFullYear()
let lastM = lw.getMonth() + 1
let lastD = lw.getDate()
let startdate = lastY + "-" + (lastM < 10 ? "0" + lastM : lastM) + "-" + (lastD < 10 ? "0" + lastD : lastD)
return startdate
}
 /**
* 获取几个月之前日期
*/
monthAgo(monthNum = 0) {
let newDate = new Date();
let year = newDate.getFullYear(); //获取当前日期的年份
let month = newDate.getMonth() + 1; //获取当前日期的月份
let day = newDate.getDate(); //获取当前日期的日
let days = new Date(year, month, 0)
days = days.getDate() //获取当前日期中月的天数
let year2 = year // 进行月份计算
let month2 = parseInt(month) - monthNum
if (month2 <= 0) {
year2 = parseInt(year2) - parseInt(month2 / 12 == 0 ? 1 : Math.abs(parseInt(month2 / 12)) + 1)
month2 = 12 - (Math.abs(month2) % 12)
} // 进行日期计算
let day2 = day
let days2 = new Date(year2, month2, 0)
days2 = days2.getDate()
if (day2 > days2) {
day2 = days2
} let startdate = year2 + "-" + (month2 < 10 ? "0" + month2 : month2) + "-" + (day2 < 10 ? "0" + day2 : day2)
return startdate
}
 /**
* 获取几年之前日期
*/
yearAgo(yearNum = 0) {
let newDate = new Date();
let year = newDate.getFullYear(); //获取当前日期的年份
let month = newDate.getMonth() + 1; //获取当前日期的月份
let day = newDate.getDate(); //获取当前日期的日 let year2 = year - yearNum; let startdate = year2 + "-" + (month < 10 ? "0" + month : month) + "-" + (day < 10 ? "0" + day : day)
return startdate
}
   /**
* 根据日期获取上一个月
*/
preMonth(data) {
let curMonth = new Date(data)
let month = curMonth.getMonth() - 1;
curMonth.setMonth(month);
let newMonth = curMonth.getMonth() + 1;
if (newMonth < 10) {
newMonth = "0" + newMonth;
}
return curMonth.getFullYear() + '-' + newMonth;
}
   /**
* 获取当前年月(yyyy-MM)
*/
theCurrentMonth() {
let date = new Date();
let nowMonth = date.getMonth() + 1;
if (nowMonth >= 1 && nowMonth <= 9) {
nowMonth = "0" + nowMonth;
}
let nowDate = date.getFullYear() + '-' + nowMonth;
return nowDate
}
   /**
* 获取上个月第一天
*/
firstdate() {
let date = new Date();
let nowMonth = date.getMonth() + 1;
if (nowMonth >= 1 && nowMonth <= 9) {
nowMonth = "0" + nowMonth;
}
let nowDate = date.getFullYear() + '-' + nowMonth + '-01';
return nowDate
}
  /**
* 获取上个月最后一天
*/
enddate() {
let date = new Date();
let day = new Date(date.getFullYear(), date.getMonth(), 0).getDate();
let nowMonth = date.getMonth() + 1;
if (nowMonth >= 1 && nowMonth <= 9) {
nowMonth = "0" + nowMonth;
}
let nowDate = date.getFullYear() + '-' + nowMonth + '-' + day; return nowDate
}

最新文章

  1. JMeter 集合点
  2. CF memsql Start[c]UP 2.0 B
  3. jquery 选择器 -高级使用 新的 心得
  4. c++中基类与派生类中隐含的this指针的分析
  5. pgbouncer配置
  6. .NET设计模式(13):享元模式(Flyweight Pattern)(转)
  7. ★Linux磁盘配额的使用 ★——牛刀小试
  8. log.isDebugEnabled()的使用
  9. lxml的另一种用法
  10. JS流程控制
  11. 利用 Charles Proxy 下载旧版本 iOS App
  12. 产品经理说|AIOps 让告警管理变得更智能
  13. 自定义合并列:el-table
  14. DOM-Element对象
  15. Ubuntu 汉字显示一半的修复
  16. 64位操作系统(Windows 2008 R2 X64)ASP.NET 调用32位Excel,word 出现401 – 未授权: 由于凭据无效,访问被拒绝。
  17. Spring-Boot服务注册与发现
  18. eclipseGUI的可视化开发工具插件
  19. 第二波分析:德国是2018世界杯夺冠最大热门? Python数据分析来揭开神秘面纱… (附源代码)
  20. Spring Framework 官方文档学习(二)之IoC容器与bean lifecycle

热门文章

  1. 大型Java进阶专题(九) 设计模式之总结
  2. 微信小程序开发(一)基础知识学习
  3. js用正则表达式查找中文
  4. 惠普EX920强打760P驱动后无法开机,无法启动系统。
  5. vue学习(十一) v-for使用的注意事项:2.2.0+之后的版本里,当在组件中使用v-for时,key是必须的,它是用来表示唯一身份的
  6. C#结合SMTP实现邮件报警通知
  7. phpcms视频模块实现列表页打开内容页直接播放视频
  8. Python os.pathconf() 方法
  9. Python List sort()方法
  10. UOJ 422 [集训队作业2018] 小Z的礼物 min-max容斥 期望 轮廓线dp