首页 > 其他分享 >利用moment计算年、月、周及季的开始时间和结束时间

利用moment计算年、月、周及季的开始时间和结束时间

时间:2023-12-05 13:44:05浏览次数:32  
标签:YYYY format dateMap DD 周及 moment 时间 push

记录一下开发过程中遇到的关于获取某个维度的开始时间和结束时间的问题。

开发过程中如果遇到此问题小伙伴们一般是如何解决的呢?

最省事的方法就是直接让后端的同学把这些都算好直接返回给前端用就好了,但万一后端同学没空或者心情不好呢?哈哈哈,今天我们自己动手,丰衣足食。

需求:

获取本年、本季、本月、本周、上周的开始日期和结束日期。

利用moment计算代码如下:

import moment from 'moment';
moment.locale('zh-cn'); // 注意,这个设置是为了让moment的一周起始时间是从周一开始,默认是从周日开始的
const dateMap = {};
dateMap.year = [];
dateMap.quarter = [];
dateMap.month = [];
dateMap.week = [];
dateMap.lastWeek = [];
dateMap.year.push(moment().startOf('year').format('YYYY-MM-DD')); // 本年的起始时间
dateMap.year.push(moment().endOf('year').format('YYYY-MM-DD')); //本年的结束日期
dateMap.quarter.push(moment().startOf('quarter').format('YYYY-MM-DD')); // 本季的起始时间
dateMap.quarter.push(moment().endOf('quarter').format('YYYY-MM-DD')); // 本季的结束时间
dateMap.month.push(moment().startOf('month').format('YYYY-MM-DD')); //本月的开始时间
dateMap.month.push(moment().endOf('month').format('YYYY-MM-DD')); //本月的结束时间
dateMap.week.push(moment().startOf('week').format('YYYY-MM-DD'));//本周的开始日期
dateMap.week.push(moment().endOf('week').format('YYYY-MM-DD'));//本周的结束日期
dateMap.lastWeek.push(moment().add(-1, 'W').startOf('week').format('YYYY-MM-DD'));//上周的开始时间
dateMap.lastWeek.push(moment().add(-1, 'W').endOf('week').format('YYYY-MM-DD'));//上周的结束日期

 至此,我们已经完成了上面的需求。

标签:YYYY,format,dateMap,DD,周及,moment,时间,push
From: https://www.cnblogs.com/brucefq/p/17877026.html

相关文章

  • 时间格式化转换及时间比较compareTo
    时间格式化转换及时间比较compareTo/***时间格式的转换:在具体报错的地方做转换,可能不能从根本上面解决问题。不排除在其他的代码位置也会使用该错误格式的数据。**1.可以将数据源的数据批量格式化yyyy-MM-dd(错误格式:yyyy-MM-dd00:00:00)......
  • mysql和Oracle 查询某个时间之内的数据
    查询最近一个月的数据mysqlSELECTid,title,endtimefromclassroomwhereyears=2022anddate_sub(CURDATE(),interval1month)<endtime;DATE_SUB()函数从日期减去指定的时间间隔,本文是从当前时间减去一个月。CURDATE()函数表示当前年月日,NOW()函数表示当前年月......
  • go-carbon v2.2.14 发布,轻量级、语义化、对开发者友好的 Golang 时间处理库
    carbon是一个轻量级、语义化、对开发者友好的golang时间处理库,支持链式调用。目前已被awesome-go收录,如果您觉得不错,请给个star吧github.com/golang-module/carbongitee.com/golang-module/carbon安装使用Golang版本大于等于1.16//使用github库goget-ugithu......
  • js获取时间戳转化成日期格式的直接使用和封装
     一、在页面中直接使用1. 通过模板字符串使用:{{times}}2. 定义变量存放时间:data(){return{times:"",};},3. 在mounted()方法里调用:mounted(){constdate=newDate();constY=date.getFullYear();constM=date.getMonth()+1<10?"0"......
  • ARIMA模型,ARIMAX模型预测冰淇淋消费时间序列数据|附代码数据
    全文下载链接:http://tecdat.cn/?p=22511最近我们被客户要求撰写关于ARIMAX的研究报告,包括一些图形和统计输出。标准的ARIMA(移动平均自回归模型)模型允许只根据预测变量的过去值进行预测。该模型假定一个变量的未来的值线性地取决于其过去的值,以及过去(随机)影响的值。ARIMAX模型......
  • 数值与时间转换
    根据开始时间、预测时长(即几个月),给String数组的时间predictTime赋值,并返回double数组的时间tt/***获取预测时间段,封装进double类型数组,格式:202006*@parampredictionStart开始预测时间‘2023-01’*@parampredictionPoint预测时长*@parampredictTime......
  • Linux和Windows时间不一致问题
    问题描述装过双系统或者虚拟机装Linux的人都知道,Linux的时间和Windows往往是不同步的,在编写跨平台程序的时候特别是对时间敏感的代码就带来很大的困扰解决办法这个问题可以在Linux下解决先用命令查看时区timedatectl如果系统刚刚装好,没有设置好时区,有可能默认的是America/L......
  • O(1) 时间插入、删除和获取随机元素
    O(1)时间插入、删除和获取随机元素难度:简单|中等√|困难-------------------用时:18分钟(第一次)-------------------作题日期:2023-12-03ps:本人理解有限,以下是自我理解,官方和大佬有更完整和详细的解析!!!题目描述题目描述实现RandomizedSet类:Randomi......
  • 3-5 极语言文档类、地址类、日期类、时间类——成员表
    中文名字英文名称长度作用解释文档类DOCINFO20用来显示打印对话框或打印设置对话框。函数:PrintDlg(lppd)文档类——成员表中文英文类型作用解释长度cbSize整数指定这个结构的大小,以字节为单位。名称lpszDocName整数指向指定文档名称的字符串输出lpszOutput整数指向指定输出文件名称......
  • 极语言3-12绘图启动类、编解码类、串口通讯类、串口系统类、串口时间类、串口配置类—
    中文名字英文名称长度作用解释绘图启动类GdiplusStartupInput24包含GdiplusStartup函数所需的一个参数块。绘图启动类——成员表版本GdiplusVersion整数必须为1回调DebugEventCallback整数可以在调试版本上调用的回调函数的指针背景SuppressBackgroundThread整数指定是否禁止显示G......