计算每月有几周,并且返回每周的具体日期(按照实际日历)
getWeekData(year, month) { //传入 年 月 获取当月有几周 以及日期 var new_year = year; //取当前的年份var new_month = month++;//取下一个月的第一天,方便计算(最后一天不固定)if(new_month<10){ new_month = '0' + new_month }var weekDay = ["星期一", "星期二", "星期三", "星期四", "星期五", "星期六", "星期天"];if (new_month > 12) {new_month -= 12; //月份减new_year++; //年份增}var first_date = new Date(new_year, new_month, 1); //取当年当月中的第一天-时间格式var last_Data = (new Date(first_date.getTime() - 1000 * 60 * 60 * 24)).getDate() //获取当月最后一天日期//当月第一天是周几var firstzhouji = new Date(new_year + '/' + new_month + '/' + 1).getDay() == 0 ? '星期天' : weekDay[new Date(new_year + '/' + new_month + '/' + 1).getDay() - 1]//当月最后一天是周几var lastzhouji = new Date(new_year + '/' + new_month + '/' + last_Data).getDay() == 0 ? '星期天' : weekDay[new Date(new_year + '/' + new_month + '/' + last_Data).getDay() - 1]var firsttime = '' //第一周有几天if (firstzhouji == '星期一') { firsttime = 7 }if (firstzhouji == '星期二') { firsttime = 6 }if (firstzhouji == '星期三') { firsttime = 5 }if (firstzhouji == '星期四') { firsttime = 4 }if (firstzhouji == '星期五') { firsttime = 3 }if (firstzhouji == '星期六') { firsttime = 2 }if (firstzhouji == '星期天') { firsttime = 1 }var lasttime = '' //最后一周有几天if (lastzhouji == '星期一') { lasttime = 1 }if (lastzhouji == '星期二') { lasttime = 2 }if (lastzhouji == '星期三') { lasttime = 3 }if (lastzhouji == '星期四') { lasttime = 4 }if (lastzhouji == '星期五') { lasttime = 5 }if (lastzhouji == '星期六') { lasttime = 6 }if (lastzhouji == '星期天') { lasttime = 7 }// 前后两周 加上 剩余周数 得出总周数var contime = 2 + (last_Data - lasttime - firsttime) / 7//得出每周对应的日期var zhouArry = []for (var i = 1; i <= contime; i++) {var strTime = ''var lastTime = ''if (i == 1) {strTime = year + '-' + new_month + '-' + '01'let aa = 1 + firsttime - 1if(aa<10){aa='0'+aa}lastTime = year + '-' + new_month + '-' + aa} else if (i == contime) {let bb = last_Data - lasttime + 1if(bb<10){bb='0'+bb}strTime = year + '-' + new_month + '-' + bblastTime = year + '-' + new_month + '-' + (last_Data<10 ? ('0'+last_Data) : last_Data )} else {strTime = addDate(zhouArry[zhouArry.length - 1].endTime, 1)lastTime = addDate(zhouArry[zhouArry.length - 1].endTime, 7)}zhouArry.push({weeknum: i,beginTime: strTime,endTime: lastTime,})//日期增加 接受两个参数, 传入的时间,传入时间增加的天数function addDate(date, days) {if (days == undefined || days == '') {days = 1;} var date = new Date(date);date.setDate(date.getDate() + days);var month = date.getMonth() + 1;if(month<10){ month = '0' + month;}var day = date.getDate(); if(day<10){ day = '0' + day;} return date.getFullYear() + '-' + month + '-' + day;} }return zhouArry},
计算每月有几周,并且返回每周的具体日期(按照实际日历)相关推荐
- java8日期计算(偏移N周,返回指定星期的日期)
使用举例:指定一个日期:如2022-08-26,返回两周前的周五,返回2022-08-12 一.工具类 package com.example.demo;import java.time.DayOfW ...
- Java中计算范围时间内有几周并返回每周起止日期
import org.apache.commons.lang.time.DateUtils; import java.text.ParseException; import java.text.Sim ...
- java 自然周_java 使用Calendar类计算每月有多少自然周,并输出每周的开始和结束日期...
思路:首先是获取该月的实际天数,然后从1号遍历直至该月最后一天,利用Calendar类找出该日是一周中的第几天, (1)若该日是周日,则视为一周结束,并用该日期减去6找到该周的开始日期,若相减结果小于 ...
- JS 获取每月有几周(每周五到周四算作一周)
原文地址:https://caochangkui.github.io/data-week/ 将每周五至周四算作一周,计算每月有几周,并获取到每周的起始时间. 日期格式化 Date.prototype. ...
- JAVA格式化日期、时间,及获取每月第几周 每周第几天 每月第几天
Date dt = new Date(); SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd");//格式化 System ...
- C语言编程>第五周 ⑤ 编写一个程序,从键盘输入X,Y,Z 3个数, 编写函数计算3个数的立方和并返回计算结果。
例题:编写一个程序,从键盘输入X,Y,Z 3个数, 编写函数计算3个数的立方和并返回计算结果. 第一种方法: 代码如下: #include <stdio.h> int abc(int,in ...
- php 计算一年中周数,php 计算出一年中每周的周一日期
最近接到一个任务,归纳起来,就是:要算出每年当中,每周的周一日期.想了一会,看了下date函数,深入了解了一下date函数各个参数的含义之后,终于把这道题做出来了! 在date()函数中,有一个参数对 ...
- 根据日期计算属于第几周(周日是一周的第一天)
根据 日期计算属于第几周,见代码,重点是红色加粗代码,如果日期是下一年的第一周的时候的解决方案,如果谁有更好的方法,请不吝赐教 /** * 根据日期计算属于第几周(周日是一周的第一天) * ...
- 怎么计算开学第几周php,如何计算开学第几周, 要求每年通用
其实是要精确到周即可, 即给定当前时间, 知道是本学期的开学第几周. 问题的关键好像是没找到规律, 我现在用的是如下代码(php), 准确度不够好: function teachweek ($date ...
最新文章
- hdu 3094——A tree game
- openGauss的开源数据库之路
- SpringMVC访问流程
- 5.1 API : SVC
- celery 可视化_Celery部署爬虫(三)
- 只会编程的程序员没有前途
- Casewhen和Decode
- 基于swiper的移动端H5页面,丰富的动画效果
- linux入门命令菜鸟,经典:Linux菜鸟入门级命令大全
- TyperError: excepted str,byte or os.PathLike object, not io.TextIOWrapper
- 机器学习:02 特征工程和决策树回归
- 一节计算机课日记,电脑课作文5篇
- 解决百度云管家导入未完成下载任务
- Html 用户反馈界面
- CT一般扫描参数_CT扫描参数介绍(1)
- Android手机拍照功能的实现
- HTML+CSS抗疫网页设计 疫情感动人物静态HTML网页 web前端开发技术 web课程设计 网页规划与设计
- 世界各地的游戏都是如何分级的?哪个最严格?
- stm32——中断优先级管理
- opencv +Hog + SVM 车辆检测
热门文章
- 03-Redis客户端连接Redis服务器(redis.conf 文件配置没有生效导致redis运行报错Error: Connection reset by peer)
- 微软行星云计算Planetary Computer——惊喜!很多GEE上没有的数据可以在这里找到!(中国历史气候数据也有)
- Spring为什么默认是单例模式?
- 树莓派实现云直播系统
- 学计算机用x260可以吗,联想X260电脑健盘使用方法
- ESP8266模块使用
- node.js http-server虽然启动了,但是网页打开显示无法正常运作解决办法
- 鱼只为水疯狂---生活在池子中的鱼
- Excel自动组卷系统使用教程
- 【Java设计模式系列】装饰器模式(Decorator Pattern)