思路 当前时间获取 主要是利用时间戳的时间差来显示当前时间
在线时间戳转换网站 方便校验https://tool.lu/timestamp/
时间戳:unix时间戳是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒。 [1]
Unix时间戳(英文为Unix epoch, Unix time, POSIX time 或 Unix timestamp)
是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,不考虑闰秒。
UNIX时间戳的0按照ISO 8601规范为 :1970-01-01T00:00:00Z.
一个小时表示为UNIX时间戳格式为:3600秒 即是3600000;一天表示为UNIX时间戳为86400秒。

日期这些 可以使用内置方法转换时间戳来获取当前日期
例如
计算两个日期间 可以使用时间戳

let days = new Date().getTime() - new Date('2021/01/01').valueOf();     // 计算相差天数

// 一天时间戳 86400000

七天前

new Date(new Date().setDate(new Date().getDate() - 7)).toLocaleDateString();//七天前的时间 2021/12/10

一个月前

new Date(new Date().setDate(new Date().getDate() - 30)).toLocaleDateString();//一个月前的时间 2021/12/10

一年前

new Date(new Date().setDate(new Date().getDate() - 365)).toLocaleDateString();//一年前的时间 2020/12/10

当前日期

new Date().toLocaleDateString();//当前时间2021/12/17

获取上个月最后一天

  //获取上一个月最后一天2022-05-31 (今天是2022-06-27)let MonthlastDay = new Date(new Date(new Date().getFullYear(), new Date().getMonth() - 1, new Date(new Date().getFullYear(), new Date().getMonth(), 0).getDate())).toLocaleDateString();

获取上个月第一天

  //获取上一个月最后一天2022-05-31 (今天是2022-06-27)let MonthlastDay = new Date(new Date(new Date().getFullYear(), new Date().getMonth() - 1, new Date(new Date().getFullYear(), new Date().getMonth(), 0).getDate())).toLocaleDateString();let arr=MonthlastDay.split('/');let day=arr[0]+'-'+arr[1]+'-01';// day=   2022-05-01

获取上个月到12个月前的时间段

    let MonthlastDay = new Date(new Date(new Date().getFullYear(), new Date().getMonth() - 1, new Date(new Date().getFullYear(), new Date().getMonth(), 0).getDate())).toLocaleDateString(); //2022-05-31 let addList = []; //先创建一个空数组,过滤存在超标表里面的设备序列号uploaddeviceinfo表的数据let premonth = []; //先创建一个空数组,方便后面存储日期数据let d = new Date(); // 当前时间d.setMonth(d.getMonth() + 1, 1); //设置月份,设置当前日为1号 (避免出现31号时候,其他月份没有31号的bug)for (let i = 0; i < configInfo.obd.mns.AL.HowMonth + 1; i++) {//开始循环d.setMonth(d.getMonth() - 1); //月份值-1  循环的时候在当前月份上减一 来获取上个月的月份(0 ~ 11)let m = d.getMonth() + 1; // 月份 + 1 来获取真正的月份 (1 ~ 12)m = m < 10 ? "0" + m : m; //三元表达式来判断 如果小于10月 给前面 +0 如果大于等于10月 则不变输出premonth.push(d.getFullYear() + "-" + m); //将 循环出来的 年月 一次 存放进 result 数组中}//premonth[premonth.length - 1]+ "-" + "01"; //2021-06-01let months = [premonth[premonth.length - 1] + "-" + "01", MonthlastDay ];  //获取到前几个月数据到上个月月末时间段// months =  2021-06-01 2022-05-31

获取下周一日期

     //今天是 2022-06-28周二 ,则本周一是2022-06-27let myDate = new Date();myDate.setDate(myDate.getDay() == 0 ? myDate.getDate() - 6 : myDate.getDate() - (myDate.getDay() - 1)); //先获取当前日期的周一let dtime = new Date(myDate.setDate(myDate.getDate() + 7)).toLocaleDateString(); //+7代表下一个周一//dtime="2022/7/4" 下周一

获取七天之后的日期

//今天是 2022-06-28周二
let time=new Date(new Date().setDate(new Date().getDate()+ 7)).toLocaleDateString();//七天后的时间
//time="2022/7/5"

JavaScript 有关获取当前/上个月/12个月前/七/7天/一周之前/下周一的日期格式 持续更新...相关推荐

  1. php获取12个月前的日期,PHP 1901年12月13日之前的日期的32位日期解析

    我很高兴在开发机器上使用strtotime()来解析日期,其中一些是在1800年代,而一个极端的例子是在1500年代. 但是我的开发机器是64位,服务器是32位.在32位计算机上,1901年12月13 ...

  2. 2022 6月软件测试面试题(400道)【附带答案】持续更新...

    前言 测试岗面试是大多数人永远是逃不过的,只要你想入职那肯定就会有一大推的问题要回答. 为此我特意整理出一份(超详细笔记/面试题)它几乎涵盖了所有的测试开发技术栈,非常珍贵,人手一份 肝完进大厂 妥妥 ...

  3. Python得到前面12个月的数据

    #Python 实现得到现在时间12个月前的每个月# 假设现在的时间是2016年9月25日#得到现在的时间 得到now等于2016年9月25日 now = datetime.datetime.now( ...

  4. 【原创】Js:日期处理(日期格式必须【yyyy-mm-dd】才能转成long的毫秒!其他的不是【年-月-日】的格式,结果会是【NaN】)...

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  5. Java 获取当前时间最近12个月(字符串)

    /*** 获取当前系统时间最近12月的年月(含当月)* 2018-04~2019-03*/public String getLatest12Month(Date date){Calendar from ...

  6. java获取过去12个月日期

    如有你有个需求,查询过去12个月的税收走势图,不建议你在sql中拼接返回12个月的数据,这样很可能会导致慢sql,建议在java代码中获取日期,然后传入到sql中根据日期去 查询.获取过去12个月月份 ...

  7. js获取最近12个月

    项目场景: 一般用于echarts统计数据 问题描述: 一般统计数据,需要统计最近12个月数据,坐标轴需要显示最近12个月 解决方案: /*** 获取最近12个月,经常用于统计图表的X轴*/ getL ...

  8. MySQL获取近12个月数据SQL

    ##获取近12个月数据 SELECT TYEAR,TMONTH,CONCAT(SUBSTRING(TYEAR,3),'/',TMONTH) AS T_TIME,MARKETNAME,SJJY_WGDL ...

  9. js获取当前月后面12个月所有月份

    js获取当前月后面12个月–返回所有月份 var dataArr = [];var data = new Date();var year = data.getFullYear();data.setMo ...

最新文章

  1. java实现layui分页_基于LayUI分页和LayUI laypage分页的使用示例
  2. Spring-data-redis集成提交数据出现'maxActive'和‘maxWaitMillis’错误
  3. 如何规范你的Git commit?
  4. MFC中动态数组CArray的使用
  5. 红黑树概念及其相关操作的实现
  6. Substitute Algorithm(替换算法)
  7. magento 获取类别和子类别 Display Categories and SubCategories in Magento
  8. ros发布节点信息python_ROS入门笔记(一): ROS简介
  9. 特征经验分享以及管理文件,远程运行的小技巧
  10. angular学习疑问总结
  11. IP SAN与IB SAN
  12. android系统性能优化工具,十条Android系统优化技巧, 让手机更流畅
  13. FairGuard游戏加固兼容摸摸鱼和TAPTAP云玩
  14. 性能测试基础培训 - PPT下载
  15. 做马来西亚Lazada的选品技巧是什么
  16. linux socket 编程
  17. 马云:聪明的人都离开阿里了 剩下的成了富翁
  18. 第九城市CEO朱骏:一个人的掘金游戏
  19. 还在自建代码仓库?阿里云 云效 的这款企业级代码管理工具免费、还香!
  20. 大学校园IP网络广播-厂家基于局域网的大学校园IP广播设计指南

热门文章

  1. matlab累积分布图绘制cdfplot
  2. 2015考研数学复习全书【数一】
  3. 关于影印版与翻译版的对比
  4. 分享一波和黑客斗智斗勇的经历
  5. 小学教师计算机校本培训计划,中小学教师信息技术应用校本培训方案
  6. 大学计算机基础实用教程重点知识,大学计算机基础实用教程
  7. 人工智能:定义、历史与未来展望
  8. 2021青少年开源教育论坛暨OpenHarmony中小学师资培训成功举办
  9. ios10.2重新安装cydia(包含恢复数据库)
  10. android 实现微信的开门效果