js获取本周日期和上周日期

  • 前言
  • 一、前端页面显示
  • 二、js判断
  • 总结

前言

功能需求:根据当前日期获取到本周一、本周五、上周一和上周五的日期,然后填充到前端控件中显示


一、前端页面显示

当前日期为 2022-08-22 ,根据逻辑判断如下:
本周一为 2022-08-22,本周五为2022-08-26
上周一为 2022-08-15,上周五为2022-08-19

前端页面显示:


二、js判断

jsp判断如下:

//页面初始化时加载
var _onload=function(){//当前日期 2022-08-22 17:30:30  var today = new Date();  //构建当前日期,格式:2022-08-22 00:00:00var year = today.getFullYear(); //本年 var month = today.getMonth()+1; //本月var day = today.getDate(); //本日var newDate = new Date(year+"-"+month+"-"+day+" 00:00:00"); //年月日拼接var nowTime  = newDate.getTime(); //当前的时间戳var weekDay = newDate.getDay(); //当前星期 0.1.2.3.4.5.6 【0 = 周日】var oneDayTime = 24*60*60*1000; //一天的总msvar mondayTime = (1-weekDay) * oneDayTime + nowTime; //本周一的时间戳var tuesdayTime = (2-weekDay) * oneDayTime + nowTime; //本周二的时间戳var wednesdayTime = (3-weekDay) * oneDayTime + nowTime; //本周三的时间戳var thursdayTime = (4-weekDay) * oneDayTime + nowTime; //本周四的时间戳var fridayTime = (5-weekDay) * oneDayTime + nowTime; //本周五的时间戳var saturdayTime = (6-weekDay) * oneDayTime + nowTime; //本周六的时间戳var sundayTime = (7-weekDay) * oneDayTime + nowTime; //本周日的时间戳var lastMondayTime = nowTime - (weekDay+6)*oneDayTime; //上周一的时间戳var lastTuesdayTime = nowTime - (weekDay+5)*oneDayTime; //上周二的时间戳var lastWednesdayyTime = nowTime - (weekDay+4)*oneDayTime; //上周三的时间戳var lastThursdayTime = nowTime - (weekDay+3)*oneDayTime; //上周四的时间戳var lastFirdayTime = nowTime - (weekDay+2)*oneDayTime; //上周五的时间戳var lastSaturdayTime = nowTime - (weekDay+1)*oneDayTime; //上周六的时间戳var lastSundayTime = nowTime - (weekDay+0)*oneDayTime; //上周日的时间戳this.data.monday = mondayTime; //本周一日期赋值this.data.firday = firdayTime; //本周五日期赋值this.data.lastMonday = lastMondayTime; //上周一日期赋值this.data.lastFirday = lastFirdayTime; //上周五日期赋值
}

总结

逻辑思路:
1、根据当前日期拿到当前时间戳 nowTime = newDate.getTime() ;
2、根据当亲日期拿到当前的星期 weekDay = newDate.getDay() 0代表周日,0-6为周日到周六 ;
3、计算出一天的总ms数 oneDayTime = 24 * 60 * 60 * 1000 ,每增加一天就要加一次一天的ms数;
4、计算本周日期公式 :(N - weekDay ) * oneDayTime + nowTime ,N:1到7 代表周一到周日;
5、计算上周日期公式 :nowTime - (weekDay + M) * oneDayTime ,M:0-6 代表周日到周一;

js获取本周日期和上周日期 --- 随手记录备忘相关推荐

  1. js 获取本周 周一-周日的日期,周一周日问题特殊处理

    需求获取本周周一-周日的日期 var now = new Date();var nowTime = now.getTime() ;var day = now.getDay();var oneDayTi ...

  2. java,js获取本周和下周开始结束日期

    额,本人第一次下博文,先写一篇看看咋写. 文章目录 前言 一.java下获取本周开始结束日期以及根据某个日期获取本周开始结束日期 二.js获取本周或下周日期 总结 前言 前几天开发时用到了一些获取本周 ...

  3. js获取本周的周一、周日和上周的周一、周日

    1.js获取本周的周一.周日和上周的周一.周日 var now =new Date(); var nowTime =now.getTime(); var day =now.getDay(); var ...

  4. js获取年月日 时分秒的日期格式

    const date = new Date() const year = date.getFullYear() const month = date.getMonth() + 1 >= 10 ? ...

  5. js 获取 本周、上周、本月、上月、本季度、上季度的开始结束日期

    /** * 获取本周.本季度.本月.上月的开始日期.结束日期 */ var now = new Date(); //当前日期 var nowDayOfWeek = now.getDay(); //今天 ...

  6. JS获取本周、本季度、本月、上月的开端日期、停止日期

    Js代码 /** * 获取本周.本季度.本月.上月的开端日期.停止日期 */ var now = new Date(); //当前日期 var nowDayOfWeek = now.getDay(); ...

  7. JS获取当月每天的日期,JS获取本周每天的日期

    获取当前月每天的日期,获取当前周每天的日期实现代码: 调用代码: console.log('-----------------', getNowM(), getWeekDay()) 结果:我今天是20 ...

  8. JS获取本周、本季度、本月、上月的开始日期、结束日期

    /** * 获取本周.本季度.本月.上月的开始日期.结束日期 */ var now = new Date();                    //当前日期 var nowDayOfWeek = ...

  9. moment 取年月日_moment.js获取本周本月本年的开始日期和结束日期

    //获取本日 const startDate = moment().format('YYYY-MM-DD'); const startDate = moment().format('YYYY-MM-D ...

  10. JS获取本周、本月的开始日期和结束日期

    /*** 获得本周的开始日期和结束日期*/getWeekStartDateAndEndDateRange() {let oneDayLong = 24*60*60*1000 ;let now = ne ...

最新文章

  1. 小米推送之服务端简单开发
  2. vue-router路由安装与使用
  3. 打印出所有的水仙花数javascript_期末C语言特辑 水仙花数
  4. AIR文件操作(三):使用FileStream对象读写文件
  5. 【线段树】HDU 3397 Sequence operation 区间合并
  6. java基础——自动装箱与拆箱
  7. 电磁场与电磁波实验:仿真计算介质板的电磁参数
  8. 批发零售进销存 批发零售管理软件 批发零售店铺管理软件
  9. 不用工具直接从微软官网下载Win10正式版ISO镜像
  10. 干货《周志华机器学习详细公式推导版》发布,南瓜书pumpkin-book
  11. [Android相机]光线传感器识别环境光亮强度
  12. R语言基础之第六部分 分类(史上最全含ddply、aggregate、split、by)
  13. 计算机网络(四)——组建对等网
  14. stm32正常运行流程图_stm32学习笔记之问题总结
  15. python(27) 抓取淘宝买家秀
  16. com.mysql.cj.jdbc.Driver和serverTimezone=GMT%2B8 数据库的配置
  17. 高精地图,养不起的 「 奢侈品 」
  18. 皇轩平台为你揭秘黑链市场的地下产业链
  19. vue 分页添加序号
  20. 清华博导的“好学生”自述:我为什么逃离科研,选择去中学当老师!

热门文章

  1. 软件测试,谱尼为网络安全护航
  2. 奇迹mu开服教程:开服服务端的架设及服务器推荐需要那些东西
  3. 一亿条数据的排序处理
  4. 生产线上怎么做“防错”?不妨看看这个“防错”技术案例!
  5. VCL界面开发工具!DevExpress VCL v19.2.5全新出发
  6. 凌晨四点钟深圳的风景
  7. idea回到上一个光标位置
  8. Red5 支持https和rtmps
  9. PAT乙级 1068 万绿丛中一点红 (20 分) Java 实现
  10. 易维联温湿度记录仪的使用