weekstr是字符串“年份周数”如“20201”或者“202011”,将字符串导入函数format,将“20261”和“20211”做为例子带入函数,下面2张图为2021年和2026年日历1月的图片。该方法每周从星期一到星期日规定跨年如果下年满4天为第1周,如果下年不满4天就为去年的最后一周,2026年第一周就是2025.12.29~2026.1.4,2021年第一周就是2021.1.4~2021.1.10。

 //周数换成日期输入组件显示正确时间输入“20261”,“20211”formatDay(weekstr) {//切割字符串将年份切割出来year="2021"和year="2026"let year = weekstr.slice(0, 4);//切割周数weekNo="1" 和 weekNo="1"let weekNo = weekstr.slice(4, 7);//0-6获得输入当年1月1号的星期几,2026的1月1号是星期四,2026对应的oneday=4。2021的1月1号是星期五,2021对应的oneday=5。let oneday = new Date(year + '-01-01').getDay();// 方便计算,当为星期天时为7if (oneday == 0) {oneday = 7}let one_fistday;//规定第一周的第一天let one_lastday;//规定第一周的最后一天也就是第七天// 如果1号刚好是星期一,计算第一周的日期if (oneday == 1) {one_fistday = year + '-01-01'one_lastday = year + '-01-07'} else { //如果1号不是星期一就分为2种情况,一种为跨年下年不满4天,则为去年的最后一周,也就是2021年这种情况,第一周为2021-1-4~2021-1-10,oneday=5。另一种为跨年满4天,也就是2026这周情况,第一周为2025-12-29~2026-1-4, oneday=4。//if这种就是第二种情况,输入oneday=4if (oneday < 5) {//jj = 4let jj = 8 - oneday //2026年第一周的第一天one_fistday=2025-12-29,one_lastday=2026-01-04one_fistday = (year - 1) + '-12-' + (31 + jj - 6)one_lastday = year + '-01-' + (jj > 9 ? jj : '0' + jj)} else {//这种就是第一种情况,输入oneday=5//aa =4let aa = 9 - oneday//2021年第一周的第一天one_fistday=2021-01-04,one_lastday=2021-01-10;one_fistday = (year) + '-01-' + '0' + aa;one_lastday = (year) + '-01-' + (aa + 6 < 10 ? '0' + (aa + 6) : aa + 6);}}//规定fistday是输入周数的星期一,lastday是输入周数的星期日let fistday;let lastday;// 如果刚好是第一周,if (weekNo == 1) {fistday = one_fistdaylastday = one_lastday} else {//计算输入周的星期一和星期日fistday = this.addDate(one_fistday, (weekNo-1) * 7 )lastday = this.addDate(one_lastday, (weekNo-1) * 7)}//输出输入周的星期一和星期日return [fistday,lastday]},//计算输入周的星期一和星期日的函数addDate(date, days) {var d = new Date(date);d.setDate(d.getDate() + days);var m = d.getMonth() + 1;return d.getFullYear() + '-' + (m > 9 ? m : '0' + m) + '-' + (d.getDate() > 9 ? d.getDate() : '0' + d.getDate());}

一年中的某周转换成当前周星期一和星期日的日期相关推荐

  1. mysql转换戳转换成小时_MySQL时间函数 | 时间戳和日期之间得转换

    一.时间戳转日期select FROM_UNIXTIME(1606028010, '%Y-%m-%d %H:%i:%s'); 二.日期转时间戳select unix_timestamp('2018-0 ...

  2. mysql指定时间转换成yyyy-mm-dd_如何在MySQL中将特定日期的MM / YY转换为YYYY-MM-DD?...

    要进行转换,请使用STR_TO_DATE(),如以下语法所示.将日值与CONCAT()-连接select str_to_date(concat('yourDateValue/', yourColumn ...

  3. python pdf转txt保留全部信息_Python 将pdf转换成txt(不处理图片)

    上一篇文章中已经介绍了简单的python爬网页下载文档,但下载后的文档多为doc或pdf,对于数据处理仍然有很多限制,所以将doc/pdf转换成txt显得尤为重要.查找了很多资料,在linux下要将d ...

  4. python pdf处理 图片_Python 将pdf转换成txt(不处理图片)

    上一篇文章中已经介绍了简单的python爬网页下载文档,但下载后的文档多为doc或pdf,对于数据处理仍然有很多限制,所以将doc/pdf转换成txt显得尤为重要.查找了很多资料,在linux下要将d ...

  5. 怎么将mysql的时间转为星期_Mysql的日期转换成星期[某天对应周几]

    |-- 应用中会有各种不同的需求,要灵活应对:比如拿到某一日期要知道是周几 |--DAYOFWEEK(date) [返回日期date的星期索引(1=星期天,2=星期一, --7=星期六).这些索引值对 ...

  6. excel vba 如何将日期周几转换成文字_Excel 从精通到入门

    Excel 从精通到入门 引子 Excel? 这么简单的东西有学的必要吗?公式加减乘除,诶等等这个日期怎么变成 #### 了,虽然文本数字搞不清楚,但也算熟练使用 Excel 啦. WOW, Awso ...

  7. C语言编程>第二十二周 ④ 从键盘输入一组小写字母,保存在字符数组str中,请补充fun函数,该函数的功能是:把字符数组str中字符下标为偶数的小写字母转换成对应的大写字母,结果仍保存在原数组

    例题:从键盘输入一组小写字母,保存在字符数组str中,请补充fun函数,该函数的功能是:把字符数组str中字符下标为偶数的小写字母转换成对应的大写字母,结果仍保存在原数组中. 例如,输入 " ...

  8. C语言编程>第十六周 ⑧ S是一个由数字和字母字符串组成的字符串,由变量len传入字符串长度。请补充fun函数,该函数的功能是把字符串s中的数字字符转换成数字并存放到整型数组a中

    例题:S是一个由数字和字母字符串组成的字符串,由变量len传入字符串长度.请补充fun函数,该函数的功能是把字符串s中的数字字符转换成数字并存放到整型数组a中,函数返回数组a的长度. 例如,s=&qu ...

  9. kettle大于0的转换成1_第一期实训周:基于Python+MySQL+Kettle+R的某网站数据采集分析...

    ↓ 基于Python+MySQL+Kettle+R的 某网站数据采集分析 哈喽!各位学员们 咱们第一期课程就要开始了 下面划重点! 一 高校院系 齐鲁工业大学数学与统计学院应用统计系 二 实训日期 2 ...

最新文章

  1. 程序员的520--8ms给你无法复制的花式告白
  2. ijkplayer、VLC Player、SmartPlayer、ExoPlayer播放器比较
  3. Rekit Studio简介:用于React和Redux开发的真实IDE
  4. playframework 打包在tomcat里部署
  5. Java并发——Java与多线程
  6. Await Async和Thread.waitAll想法?未完待续
  7. js 复制图片到剪切板 和 js复制文本到剪切板
  8. java后端开发简历模板,最全Java知识总结
  9. object c中的多态
  10. 有关mysql触发器的感悟_有关mysql触发器实例分享
  11. C#基础 控制台应用程序(一)介绍
  12. java poi 数据透视_java 通过 poi pivotTable 实现 数据透视表
  13. 【实践与问题解决30】苹果手机如何取消使用切换控制时候弹出的重要通知
  14. 傻瓜教学——什么是常量?常量可以分几类?它们分别又是什么?又有什么含义?
  15. 区块链指南 第2章 区块链基础
  16. php怎样转换成html格式,php实现转换html格式为文本格式的方法
  17. 使用Python以UCI心脏病数据集为例,进行数据简单分析
  18. 如何用C#制作 微信个人机器人
  19. 计算机主机恢复上电检查,电脑故障维修判断指导总结
  20. APP——功耗测试(耗电测试)——基础知识

热门文章

  1. 单片机c语言交通灯源程序,51单片机用C语言实现交通灯_红绿灯_源程序
  2. Openfire使用总结
  3. JAVA面试系列:你了解系统可用性吗?
  4. 【ARM-8】MPIDR_EL1, Multiprocessor Affinity Register 多处理器关联寄存器
  5. (Android)很抱歉,“xx”程序已经停止运行
  6. C++:评估二伽玛或 psi 功能(附完整源码)
  7. Polybuild Tool:Blender自带的重拓扑工具
  8. tddl+diamond(一)
  9. Java8常用循环遍历操作方式的效率对比
  10. 基于ffmpeg+opengl+opensl es的android视频播放器