js获取上周、本周、上月、本月、第一天和最后一天

C#获取上周、本周、下周的日期区间(周日到周六为一周) C# 获取上周、本周、下周日期区间(周日到周六为一周) 阅读详情

获取上周、本周的周一、周日

思路:先获取到本周一的时间
本周日:就是本周一的时间加6天的时间
上周一:就是本周一的时间减7天的时间
上周日:就是本周一的时间减1天的时间
注意:上面的思路不变,js里newDate.getDay()获取到日期所在的星期的第几天 0.1.2.3.4.5.6 【0 = 上周周日】
周一至周六newDate.getDay()获取到的为相应的1-6.但是周日获取到的天数为0。这是西方的计算方式,他们每周的周日为每周的第一天,这样我们用newDate.getDay()获取到的本周的0.1.2.3.4.5.6,其实0不是本周日期,为上周的周日。这里我们按照我们的习惯,周一为每周的第一天(下方代码里有相应的处理)

/**
 * 得到本周一、本周日、上周一、上周日的时间
 * 
 * return
 * {
 *   "thisWeekMonday": "2022-09-12",
 *   "thisWeekSunday": "2022-09-18",
 *   "lastWeekMonday": "2022-09-05",
 *   "lastWeekSunday": "2022-09-11"
 * }
 */
export function getMondayAndSunday() {
  var today = new Date();

  //构建当前日期,格式:2022-08-22 00:00:00
  var 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; //一天的总ms

  // 当前星期减去天数,如今天为周五,则本周一为周五的时间戳减去4天的时间戳。但周日特殊,周一至周六是周几的到的weekDay就是几,但是周日的到的为0,需特殊处理
  var thisWeekMondayTime = (1 - weekDay) * oneDayTime + nowTime; //本周一的时间戳
  if (weekDay == 0) {
    // weekDay = 0 为周日,此时本周一时间为周日减去6天的时间
    thisWeekMondayTime = nowTime - 6 * oneDayTime
  }

  var thisWeekSundayTime = thisWeekMondayTime + 6 * 24 * 60 * 60 * 1000 // 本周日

  var lastWeekMondayTime = thisWeekMondayTime - 7 * oneDayTime // 上周一
  var lastWeekSundayTime = thisWeekMondayTime - oneDayTime // 上周日

  var res = {
    thisWeekMonday: dateToYYYYMMDD(thisWeekMondayTime),
    thisWeekSunday: dateToYYYYMMDD(thisWeekSundayTime),
    lastWeekMonday: dateToYYYYMMDD(lastWeekMondayTime),
    lastWeekSunday: dateToYYYYMMDD(lastWeekSundayTime),
  }
  return res;
}

获取上月、本月的第一天和最后一天

/**
 * 得到本月第一天、本月最后一天、上月第一天、上月最后一天日期
 * return
 *  {
 *	  "thisMonthFirstDay": "2022-09-01",
 *	  "thisMonthLastDay": "2022-09-30",
 *	  "lastMonthFirstDay": "2022-08-01",
 *	  "lastMonthLastDay": "2022-08-31"
 *  }
 */
export function getMonthFirstDayAndLastDay() {
  var date = new Date()
  // 值得注意的是,如果day取值为0,意味着取的是date时间的上一个月的最后一天,简单理解:date当前月的第一天,再减去一天
  var thisMonthFirstDay = date.setDate(1) // 本月第一天
  var thisMonthLastDay = new Date(date.getFullYear(), date.getMonth() + 1, 0) // 本月最后一天

  var lastMonthFirstDay = new Date(date.getFullYear(), date.getMonth() - 1, 1) // 上月第一天

  var lastMonthLastDay = date.setDate(0) // 上月最后一天
  // var day = new Date(date.getFullYear(), date.getMonth(), 0).getDate()
  // var lastMonthLastDay = new Date(date.getFullYear(), date.getMonth() - 1, day) // 上月最后一天
  var res = {
    thisMonthFirstDay: dateToYYYYMMDD(thisMonthFirstDay),
    thisMonthLastDay: dateToYYYYMMDD(thisMonthLastDay),
    lastMonthFirstDay: dateToYYYYMMDD(lastMonthFirstDay),
    lastMonthLastDay: dateToYYYYMMDD(lastMonthLastDay),
  }
  return res
}

代码中用到的日期转字符串方法

// 返回 yyyy-MM-dd 格式字符串
export function dateToYYYYMMDD(date) {
  var time = new Date(date);
  var y = time.getFullYear();
  var m = (time.getMonth() + 1);
  m = m > 9 ? m : '0' + m;
  var d = time.getDate();
  d = d > 9 ? d : '0' + d;

  return y + "-" + m + "-" + d;
}```


获取上周周一或周日时间 获取周一和周日的日期,当前周,上周,下周,周一至周日时间段 立即下载

相关推荐

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

js 获取 本周、上周、本月、上月、本季度、上季度的开始结束日期 /** * 获取本周、本季度、本月、上月的开始日期、结束日期 */ var now = new Date(); //当前日期 var nowDayOfWeek = now.getDay(); //今天本周的第几天 var nowDay = now.getDate(); //当前日 var nowMonth = now.getMonth(); //当前月 var nowYear = now.getYear(); //当前年 nowYear += (nowYear < 2000) ? 1900 : 0; // var last

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

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

qq_35086941的博客 4890

淘宝扫码登录避坑指南:如何避免异地登录风控并稳定获取Cookie(附Python代码)

本文深入解析了淘宝扫码登录的风控机制,提供了从环境仿真到代码实现的完整避坑指南。通过精细化伪装请求头、管理会话与IP策略,并附上Python示例代码,帮助开发者稳定获取Cookie,有效避免异地登录风控,实现自动化流程的可靠集成。

l6m7n8的博客 589

使用day.js库的方法获取上周、本周、下周、上月、本月、下月、本年,的时间范围

使用day.js库的方法获取上周、本周、下周、上月、本月、下月、本年,的时间范围

Anyuegogogo的博客 5285

行车记录仪 - 碰撞检测

功能需求 行车记录仪的核心功能是记录,大部分时候,行车记录仪都是在循环录制视频和音频,而设备的存储空间是有限的,因此录制机制一般是循环覆盖录制,如此一些重要的记录(例如:发生碰撞时的记录)就可能会被覆盖,为了避免这种情况的发生,行车记录仪设备就需要感知这些情况并做特殊处理(例如:备份相应时刻的录像数据)。 实现原理 碰撞检测是通过物理芯片G-sensor来实现的,加速度发生变化时G-sensor驱动会将加速度上报给应用层,应用层做相应处理。 G-sensor G-sensor(Gravity se

qazw9600的专栏 5216

从法律文档到知识图谱

这里我们定义了两个 Pydantic 模型:Location 用于捕捉结构化的地址信息,包含可选的国家、州和地址字段;Party 用于表示合同参与方,包含必填的名称和可选的位置详情。字段描述通过告知 LLM 每个字段具体需要查找哪些信息,来辅助提取过程。"""包含结构化地址组件的位置信息。"""country: Optional[str] = Field(None, description="国家")

Anspire的博客 3030

monent的工具, 本周 本月 上周 上月的第一天-最后一天

【代码】monent的工具, 本周 本月 上周 上月的第一天-最后一天。

weixin_45930242的博客 550

D457深度相机调试记录(max96712+max9295A)

使用max96712解串器解4路D457相机。采集深度相机Depth和RGB流。

navy2015_163的博客 1262

js-获取(昨天、今天、本周、上周、本月、上月)时间工具

js获取(昨天、今天、本周、上周、本月、上月)简单的时间工具 /** * 日期范围工具类 */ export function startTime(time) { const nowTimeDate = new Date(time) return nowTimeDate.setHours(0, 0, 0, 0) } export function endTime(time) { ...

weixin_43662573的博客 3869

白话机器学习算法理论+实战番外篇之Xgboost

1. 写在前面 如果想从事数据挖掘或者机器学习的工作,掌握常用的机器学习算法是非常有必要的,在这简单的先捋一捋, 常见的机器学习算法: 监督学习算法:逻辑回归,线性回归,决策树,朴素贝叶斯,K近邻,支持向量机,集成算法Adaboost等 无监督算法:聚类,降维,关联规则, PageRank等 我前面已经尝试用最白话的语言完成了一个白话机器学习算法理论+实战系列,这个系列已经基本包含了上面这些算...

Miracle8070 1万+

从 on_event 到 lifespan:FastAPI 生命周期管理的旧方法与新方法对比与迁移

从 on_event 到 lifespan:FastAPI 生命周期管理的旧方法与新方法对比与迁移

XiaoqiangClub的博客 1021

js获取今天,昨天,本周,上周,本月,上月开始时间和结束时间

输出时间样式为 yyyy-mm-dd hh:mm:ss,不满 2 位则前面添 0; 前面添 0 方法 function add0(m){ return m<10?'0'+m:m }; 获取某月天数 function getMonthDays(year, month) { var new_year = year; //取当前的年份 var ne...

dwz100916007的博客 3851

AUTOSAR进阶图解==>AUTOSAR_EXP_VFB

AUTOSAR虚拟功能总线(VFB)摘要 AUTOSAR虚拟功能总线(VFB)是汽车开放系统架构中的核心抽象概念,为分布式电子系统提供统一通信模型。VFB允许软件组件在不了解底层物理通信机制的情况下交互,通过运行时环境(RTE)实现组件间的数据交换。系统配置过程将抽象的VFB视图转换为具体实现,包括组件到ECU的映射和通信机制选择。VFB采用"last-is-best"语义进行数据通信,并支持模式管理机制,使组件能根据系统状态调整行为。此外,VFB还支持与非AUTOSAR系统的交互,通常

一名留德华的,康德的信徒的,专注于汽车电子领域的博客 1116

js获取当前日期,本月/本周第一天和最后一天&&格式转换

new Date 对象说明 var Nowdate=new Date(); Nowdate.getYear(); //获取当前年份(2位) Nowdate.getFullYear(); //获取完整的年份(4位,1970-????) Nowdate.getMonth(); //获取当前月份(0-11,0代表1月) Nowdate.getDate(); //获取当前日(1-31) Nowdate.getDay(); //获取当前星期X(0-6,0代

Horses丶浩的博客 2722

2025资源从哪里来!

研究网络通信中的安全问题,如VLAN划分、路由协议(静态、动态如OSPF、BGP)、NAT转换、AAA认证、访问控制列表(ACL)等。‌Wi-Fi安全设置‌、‌密码破解原理‌(仅用于合法测试或教育目的)、‌常见Web安全问题‌如SQL注入、XSS跨站脚本攻击等的防范措施。在这个网站你可以找到你对应的专业-对应的路线-对应的资源-对应的百度网盘里面全是免费的资源------------------惊喜不?‌防火墙配置与策略‌、‌入侵检测与防御系统(IDS/IPS)‌、‌端口扫描与漏洞扫描技术‌等。

qq_56248592的博客 1902

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

js 获取本月第一天和最后一天,上月第一天和最后一天

当前月第一天 CurrentMonthFirst(){ var date=new Date(); date.setDate(1); return date; }, 当前月最后一天 CurrentMonthLast(){ var date=new Date(); var currentMonth=date.getM...

星下云的博客 1万+

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

JavaScript 工具类 获取本月第一天、本月最后一天、上月第一天、上月最后一天的日期

JavaScript 工具类 获取本月第一天、本月最后一天、上月第一天、上月最后一天的日期 本月第一天 dateUtil.getBeginMonth() 本月最后一天 dateUtil.getEndMonth() 上月第一天 dateUtil.getBeginLastMonth() 上月最后一天 dateUtil.getEndLastMonth() /*** * 本月的第一天时间 */ export function getBeginMonth() { var date = new...

CaiXinXing的优快云博客 1111

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

js获取今天、昨天、本周、上周、本月、上月的开始日期、结束日期

/** * 获取今天、昨天、本周、上周、本月、上月的开始日期、结束日期 */ var now = new Date(); //当前日期 var nowDayOfWeek = now.getDay(); //今天本周的第几天 var nowDay = now.getDate(); //当前日 var nowMonth = now.getMon..

adoreen的博客 1656

JS获取本周、上周、本月、上月时间段

哈喽,最近公司都在赶项目在做的过程中产品提了一个需要查看本周、上周、上个月的需求,现在来记录下代码能直接使用。最后的效果如下图(主要涉及Date()对象的使用): 主要思路(获取周时间段) /*** 核心思路:先得到startDateTime(开始时间),随后+6就能得出endDateTime(结束时间) 开始时间的计算方式:通过getDay()先获取要计算时间是属于星期几(可能出现:0~6),再通过getDate()获取要计算时间是属于本月中那一天 结果会出现两种情况: 1、利用本月的天数-归属星期几

UUID、 1321

js如何获取当月第一天和最后一天

var now = new Date() // 当前日期 var nowYear = now.getFullYear() //当前年 var nowMonth = now.getMonth() //当前月 (值为0~11) var firstDay = new Date(nowYear,nowMonth,1) // 本月开始时间 var LastDay = new Date(nowYear, nowMonth+1,0); //...

weixin_45121510的博客 1万+

php获取本年第一天,php获取本周、本月第一天与最后一天的时间戳

用php获取本周、本月第一天与最后天时间戳。1,获取今天的时间范围:$start = mktime(0,0,0,date("m"),date("d"),date("Y"));$end = mktime(0,0,0,date("m"),date("d")+1,date("Y"));2,获取本周第一天/最后一天的时间戳$year = date("Y");$month = date("m");$day ...

weixin_34219634的博客 1925

js获取 本周,本月,本季度,本年,上月,上周,上季度,去年

@author  YHC转载必须在文章第一行注明来源地址:  http://blog.youkuaiyun.com/yhc13429826359/article/details/8085641/** * 针对Ext的工具类 */ var MrYangUtil=function(){ /*** * 获得当前时间 */ this.getCurrentDate=function(){ retur

YHC 5366

获取本周、本月第一天和最后一天

本周第一天 export const showWeekFirstDay = function () { var Nowdate = new Date() var day = Nowdate.getDay() if (day === 0) { day = 7 } var WeekFirstDay = new Date(Nowdate - (day - 1) * 86400...

qq_43639075的博客 1194

js获取昨天/明天、本周/上周/下周、本月/上月、本季度/上季度、上一年的开始/结束日期

js获取昨天/明天、本周/上周/下周、本月/上月、本季度/上季度、上一年的开始/结束日期

qq_57404736的博客 4848

js获取本周、上周第一天和最后一天的日期

获取本周第一天和最后一天的日期 话不多说直接上代码 export function getThisWeekData() {//获得本周周一~周日的年月日 var thisweek = {}; var date = new Date(); // 本周一的日期 date.setDate(date.getDate() - date.getDay() + 1); thisweek....

周不会前端的博客 8434

js获取本月第一天和最后一天日期,上个月第一天和最后一天日期

获取本月、上月第一天和最后一天的日期 //本月第一天和最后一天日期 getCurDay(){ let nowdays = new Date(); let year = nowdays.getFullYear(); let month = nowdays.getMonth() + 1; month = month > 9 ? month : "0" + month; let firstDayOfCurMonth = `${year}-${month}-01`; let last

仙女的博客 1533
上一篇: 并发编程-信号量的使用方法和其实现原理
下一篇: Element UI 中的Table表格组件自定义行高与整个表格自适应高度
java_xxxx
博客等级 码龄9年 127粉丝 99原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值