首页 > 其他分享 >moment 获取本年/本季度/本月/本周/今天/上年/上季度/上月/上周/昨天 开始结束时间

moment 获取本年/本季度/本月/本周/今天/上年/上季度/上月/上周/昨天 开始结束时间

时间:2023-12-12 17:36:54浏览次数:32  
标签:YYYY format 上年 valueOf HH 本季度 MM moment

今天
1 const startTime = moment(moment().startOf('day').valueOf()).format('YYYY/MM/DD HH:mm:ss');
2 const endTime = moment(moment().valueOf()).format('YYYY/MM/DD HH:mm:ss');
昨天
1 const startTime = moment(moment().add(-1, 'days').startOf('day').valueOf()).format('YYYY/MM/DD HH:mm:ss');
2 const endTime = moment(moment().add(-1, 'days').endOf('day').valueOf()).format('YYYY/MM/DD HH:mm:ss');
本周
1 const startTime = moment(moment().week(moment().week()).startOf('week').valueOf()).format('YYYY/MM/DD HH:mm:ss');
2 const endTime = moment(moment().week(moment().week()).endOf('week').valueOf()).format('YYYY/MM/DD HH:mm:ss');
上周
1 const startTime = moment(moment().week(moment().week() - 1).startOf('week').valueOf()).format('YYYY/MM/DD HH:mm:ss');
2 const endTime = moment(moment().week(moment().week() - 1).endOf('week').valueOf()).format('YYYY/MM/DD HH:mm:ss');
本月
1 const startTime = moment(moment().month(moment().month()).startOf('month').valueOf()).format('YYYY/MM/DD HH:mm:ss');
2 const endTime = moment(moment().month(moment().month()).endOf('month').valueOf()).format('YYYY/MM/DD HH:mm:ss');
上月
1 const startTime = moment(moment().month(moment().month() - 1).startOf('month').valueOf()).format('YYYY/MM/DD HH:mm:ss');
2 const endTime = moment(moment().month(moment().month() - 1).endOf('month').valueOf()).format('YYYY/MM/DD HH:mm:ss');
本季度
1 const startTime = moment(moment().quarter(moment().quarter()).startOf('quarter').valueOf()).format('YYYY/MM/DD HH:mm:ss');
2 const endTime = moment(moment().quarter(moment().quarter()).endOf('quarter').valueOf()).format('YYYY/MM/DD HH:mm:ss');
上季度
1 const startTime = moment(moment().quarter(moment().quarter() - 1).startOf('quarter').valueOf()).format('YYYY/MM/DD HH:mm:ss');
2 const endTime = moment(moment().quarter(moment().quarter() - 1).endOf('quarter').valueOf()).format('YYYY/MM/DD HH:mm:ss');
本年
1 const startTime = moment(moment().year(moment().year()).startOf('year').valueOf()).format('YYYY/MM/DD HH:mm:ss');
2 const endTime = moment(moment().year(moment().year()).endOf('year').valueOf()).format('YYYY/MM/DD HH:mm:ss');
上年
1 const startTime = moment(moment().year(moment().year() - 1).startOf('year').valueOf()).format('YYYY/MM/DD HH:mm:ss');
2 const endTime = moment(moment().year(moment().year() - 1).endOf('year').valueOf()).format('YYYY/MM/DD HH:mm:ss');

上面的例子中今天、本周、本月、本年的结束时间都是取到最后的23:59:59。
如果不需要取到未来时间,结束时间统一用下面这行获取系统当前时间:

1 const endTime = moment(moment().valueOf()).format('YYYY/MM/DD HH:mm:ss');
快捷时间封装库

shortcut-time.js

  1 // 引入 moment 时间插件
  2 import moment from 'moment';
  3 
  4 //获取今日/昨日/本周/上周/本月/上月 时间
  5 export default {
  6     // 获取今日的开始结束时间
  7     getToday() {
  8         let obj = {
  9             starttime: '',
 10             endtime: ''
 11         };
 12         obj.starttime = moment(
 13             moment()
 14                 .startOf('day')
 15                 .valueOf()
 16         ).format('YYYY/MM/DD HH:mm:ss');
 17         obj.endtime = moment(moment().valueOf()).format('YYYY/MM/DD HH:mm:ss');
 18         return obj;
 19     },
 20     // 获取昨日的开始结束时间
 21     getYesterday() {
 22         let obj = {
 23             starttime: '',
 24             endtime: ''
 25         };
 26         obj.starttime = moment(
 27             moment()
 28                 .add(-1, 'days')
 29                 .startOf('day')
 30                 .valueOf()
 31         ).format('YYYY/MM/DD HH:mm:ss');
 32         obj.endtime = moment(
 33             moment()
 34                 .add(-1, 'days')
 35                 .endOf('day')
 36                 .valueOf()
 37         ).format('YYYY/MM/DD HH:mm:ss');
 38         return obj;
 39     },
 40     // 获取当前周的开始结束时间
 41     getCurrWeekDays() {
 42         let obj = {
 43             starttime: '',
 44             endtime: ''
 45         };
 46         obj.starttime = moment(
 47             moment()
 48                 .week(moment().week())
 49                 .startOf('week')
 50                 //.add(1, 'days')
 51                 .valueOf()
 52         ).format('YYYY/MM/DD HH:mm:ss');
 53         obj.endtime = moment(moment().valueOf()).format('YYYY/MM/DD HH:mm:ss');
 54         return obj;
 55     },
 56     // 获取上一周的开始结束时间
 57     getLastWeekDays() {
 58         let obj = {
 59             starttime: '',
 60             endtime: ''
 61         };
 62         obj.starttime = moment(
 63             moment()
 64                 .week(moment().week() - 1)
 65                 .startOf('week')
 66                 //.add(1, 'days')
 67                 .valueOf()
 68         ).format('YYYY/MM/DD HH:mm:ss');
 69         obj.endtime = moment(
 70             moment()
 71                 .week(moment().week() - 1)
 72                 .endOf('week')
 73                 //.add(1, 'days')
 74                 .valueOf()
 75         ).format('YYYY/MM/DD HH:mm:ss');
 76         return obj;
 77     },
 78     // 获取当前月的开始结束时间
 79     getCurrMonthDays() {
 80         let obj = {
 81             starttime: '',
 82             endtime: ''
 83         };
 84         obj.starttime = moment(
 85             moment()
 86                 .month(moment().month())
 87                 .startOf('month')
 88                 .valueOf()
 89         ).format('YYYY/MM/DD HH:mm:ss');
 90         obj.endtime = moment(moment().valueOf()).format('YYYY/MM/DD HH:mm:ss');
 91         return obj;
 92     },
 93     // 获取上一个月的开始结束时间
 94     getLastMonthDays() {
 95         let obj = {
 96             starttime: '',
 97             endtime: ''
 98         };
 99         obj.starttime = moment(
100             moment()
101                 .month(moment().month() - 1)
102                 .startOf('month')
103                 .valueOf()
104         ).format('YYYY/MM/DD HH:mm:ss');
105         obj.endtime = moment(
106             moment()
107                 .month(moment().month() - 1)
108                 .endOf('month')
109                 .valueOf()
110         ).format('YYYY/MM/DD HH:mm:ss');
111         return obj;
112     },
113     // 获取本季度的开始结束时间
114     getCurrQuarterDays() {
115         let obj = {
116             starttime: '',
117             endtime: ''
118         };
119         obj.starttime = moment(
120             moment()
121                 .quarter(moment().quarter())
122                 .startOf('quarter')
123                 .valueOf()
124         ).format('YYYY/MM/DD HH:mm:ss');
125         obj.endtime = moment(moment().valueOf()).format('YYYY/MM/DD HH:mm:ss');
126         return obj;
127     },
128     // 获取上一季度的开始结束时间
129     getLastQuarterDays() {
130         let obj = {
131             starttime: '',
132             endtime: ''
133         };
134         obj.starttime = moment(
135             moment()
136                 .quarter(moment().quarter() - 1)
137                 .startOf('quarter')
138                 .valueOf()
139         ).format('YYYY/MM/DD HH:mm:ss');
140         obj.endtime = moment(
141             moment()
142                 .quarter(moment().quarter() - 1)
143                 .endOf('quarter')
144                 .valueOf()
145         ).format('YYYY/MM/DD HH:mm:ss');
146         return obj;
147     },
148     // 获取本年的开始结束时间
149     getCurrYearDays() {
150         let obj = {
151             starttime: '',
152             endtime: ''
153         };
154         obj.starttime = moment(
155             moment()
156                 .year(moment().year())
157                 .startOf('year')
158                 .valueOf()
159         ).format('YYYY/MM/DD HH:mm:ss');
160         obj.endtime = moment(moment().valueOf()).format('YYYY/MM/DD HH:mm:ss');
161         return obj;
162     },
163 
164     // 获取上一年的开始结束时间
165     getLastYearDays() {
166         let obj = {
167             starttime: '',
168             endtime: ''
169         };
170         obj.starttime = moment(
171             moment()
172                 .year(moment().year() - 1)
173                 .startOf('year')
174                 .valueOf()
175         ).format('YYYY/MM/DD HH:mm:ss');
176         obj.endtime = moment(
177             moment()
178                 .year(moment().year() - 1)
179                 .endOf('year')
180                 .valueOf()
181         ).format('YYYY/MM/DD HH:mm:ss');
182         return obj;
183     }
184 };

 

标签:YYYY,format,上年,valueOf,HH,本季度,MM,moment
From: https://www.cnblogs.com/yuwenjing0727/p/17897377.html

相关文章

  • moment.js
    //!moment.js//!version:2.29.4//!authors:TimWood,IskrenChernev,Moment.jscontributors//!license:MIT//!momentjs.com(function(global,factory){typeofexports==="object"&&typeofmodule!=="undefined"......
  • Vue 3 使用moment设置显示时间格式
    一.问题:Vue3如何使用moment设置显示时间格式。二.分析问题:在Vue3中,因为过滤器(filter)已经被废弃,取而代之的是全局方法(globalmethod)。slot-scope也被弃用使用v-slot代替。无法使用过滤器设置显示时间格式。三. 解决问题。  (1)在vueui安装moment依赖,搜索安装即可。......
  • 利用moment计算年、月、周及季的开始时间和结束时间
    记录一下开发过程中遇到的关于获取某个维度的开始时间和结束时间的问题。开发过程中如果遇到此问题小伙伴们一般是如何解决的呢?最省事的方法就是直接让后端的同学把这些都算好直接返回给前端用就好了,但万一后端同学没空或者心情不好呢?哈哈哈,今天我们自己动手,丰衣足食。需求:获......
  • SQL当月、上月、下月、上年同月、下年同月的另一种写法
    declare@kjqjvarchar(10)--格式必须是四位年份+两位月份,不如202302是2023年2月declare@sumyfintdeclare@ysint--月数0当前月大于0向后+几个月小于0向前+几个月都含给定月份set@kjqj='202301'--当前月份set@ys=0--当月0,上月-1下月1上年同月-12下年同月12set......
  • Cross-modal Moment Localization in Videos
    Cross-modalMomentLocalizationinVideos摘要:在本文中,我们探讨了时间时刻定位问题,即在未经剪辑的视频中定位自然语言查询所描述的视频时刻。这是一项通用但极具挑战性的视觉语言任务,因为它不仅需要对时刻进行定位,还需要对文本时间信息(如"第一次"和"离开")进行多模态理解,以帮......
  • 应用moment.js辅助计算工作时间
    <!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><htmlxmlns="http://www.w3.org/1999/xhtml"><head><title></title>......
  • elemenui datePicker 日期组件之快捷键的自定义,本周,本月,本季度,上周,上月,上季度
    1,先定义一个日期工具类,或者写在其他的方法中都行。定义工具类可重复使用1exportfunctiongetDateRang(val){2constnow=newDate();//当前日期3constnowDayOfWeek=now.getDay();//今天是本周的第几天4constnowDay=now.getDate();//当日5......
  • moment 近30天 近1年 近7天
      if(i==1){//近30天letd30=[...newArray(30)].map((i,idx)=>this.moment().startOf("day").subtract(idx,"days").format('MM-DD')).reverse();......
  • 微软开测“Moment4”启动包:Win11 23H2要来了
    近日,有用户在Win11最新的7月累积更新中发现,更新文件中已经开始出现了对“Moment4”的引用。具体来说,在7月累积更新中,微软加入了“Microsoft-Windows-UpdateTargeting-ClientOS-SV2Moment4-EKB”“Microsoft-Windows-23H2Enablement-Package”的启用包。类似的情况曾经在Windows......
  • 日期时间操作-moment.js
    文档地址:http://momentjs.cn/引用:在package.json的dependencies中添加"moment-mini": "^2.24.0"引入:import moment from 'moment-mini'常用到的方法:moment().toDate() 同 new Date()moment#valueOf 简单地输出自 Unix 纪元以来的毫秒数,就像 Date#valueOf 一样。当前时......