1. /**
  2. * 获取本周、本季度、本月、上月的开始日期、结束日期
  3. */
  4. var now = new Date();                    //当前日期
  5. var nowDayOfWeek = now.getDay();         //今天本周的第几天
  6. var nowDay = now.getDate();              //当前日
  7. var nowMonth = now.getMonth();           //当前月
  8. var nowYear = now.getYear();             //当前年
  9. nowYear += (nowYear < 2000) ? 1900 : 0;  //
  10. var lastMonthDate = new Date();  //上月日期
  11. lastMonthDate.setDate(1);
  12. lastMonthDate.setMonth(lastMonthDate.getMonth()-1);
  13. var lastYear = lastMonthDate.getYear();
  14. var lastMonth = lastMonthDate.getMonth();
  15. //格式化日期:yyyy-MM-dd
  16. function formatDate(date) {
  17. var myyear = date.getFullYear();
  18. var mymonth = date.getMonth()+1;
  19. var myweekday = date.getDate();
  20. if(mymonth < 10){
  21. mymonth = "0" + mymonth;
  22. }
  23. if(myweekday < 10){
  24. myweekday = "0" + myweekday;
  25. }
  26. return (myyear+"-"+mymonth + "-" + myweekday);
  27. }
  28. //获得某月的天数
  29. function getMonthDays(myMonth){
  30. var monthStartDate = new Date(nowYear, myMonth, 1);
  31. var monthEndDate = new Date(nowYear, myMonth + 1, 1);
  32. var   days   =   (monthEndDate   -   monthStartDate)/(1000   *   60   *   60   *   24);
  33. return   days;
  34. }
  35. //获得本季度的开始月份
  36. function getQuarterStartMonth(){
  37. var quarterStartMonth = 0;
  38. if(nowMonth<3){
  39. quarterStartMonth = 0;
  40. }
  41. if(2<nowMonth && nowMonth<6){
  42. quarterStartMonth = 3;
  43. }
  44. if(5<nowMonth && nowMonth<9){
  45. quarterStartMonth = 6;
  46. }
  47. if(nowMonth>8){
  48. quarterStartMonth = 9;
  49. }
  50. return quarterStartMonth;
  51. }
  52. //获得本周的开始日期
  53. function getWeekStartDate() {
  54. var weekStartDate = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek);
  55. return formatDate(weekStartDate);
  56. }
  57. //获得本周的结束日期
  58. function getWeekEndDate() {
  59. var weekEndDate = new Date(nowYear, nowMonth, nowDay + (6 - nowDayOfWeek));
  60. return formatDate(weekEndDate);
  61. }
  62. //获得本月的开始日期
  63. function getMonthStartDate(){
  64. var monthStartDate = new Date(nowYear, nowMonth, 1);
  65. return formatDate(monthStartDate);
  66. }
  67. //获得本月的结束日期
  68. function getMonthEndDate(){
  69. var monthEndDate = new Date(nowYear, nowMonth, getMonthDays(nowMonth));
  70. return formatDate(monthEndDate);
  71. }
  72. //获得上月开始时间
  73. function getLastMonthStartDate(){
  74. var lastMonthStartDate = new Date(nowYear, lastMonth, 1);
  75. return formatDate(lastMonthStartDate);
  76. }
  77. //获得上月结束时间
  78. function getLastMonthEndDate(){
  79. var lastMonthEndDate = new Date(nowYear, lastMonth, getMonthDays(lastMonth));
  80. return formatDate(lastMonthEndDate);
  81. }
  82. //获得本季度的开始日期
  83. function getQuarterStartDate(){
  84. var quarterStartDate = new Date(nowYear, getQuarterStartMonth(), 1);
  85. return formatDate(quarterStartDate);
  86. }
  87. //或的本季度的结束日期
  88. function getQuarterEndDate(){
  89. var quarterEndMonth = getQuarterStartMonth() + 2;
  90. var quarterStartDate = new Date(nowYear, quarterEndMonth, getMonthDays(quarterEndMonth));
  91. return formatDate(quarterStartDate);
  92. }

JS获取本周、本季度、本月、上月的开始日期、结束日期的更多相关文章

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

    js 获取 本周.上周.本月.上月.本季度.上季度的开始结束日期 /**  * 获取本周.本季度.本月.上月的开始日期.结束日期  */ var now = new Date(); //当前日期 va ...

  2. JS获取本周、本季度、本月、上月、本年的开始日期、结束日期

    /** * 获取本周.本季度.本月.上月的开始日期.结束日期 */ var now = new Date(); //当前日期  var nowDayOfWeek = now.getDay(); //今 ...

  3. php 获取今日、昨日、本周,上周、本月,上月,季度的起始时间戳和结束时间戳的方法

    php 获取今日.昨日.上周.本月的起始时间戳和结束时间戳的方法,主要使用到了 php 的时间函数 mktime.下面首先还是直奔主题以示例说明如何使用 mktime 获取今日.昨日.上周.本月的起始 ...

  4. moment.js获取本周本月本年的开始日期和结束日期

    //获取本日 const startDate = moment().format('YYYY-MM-DD'); const startDate = moment().format('YYYY-MM-D ...

  5. js获取本周、上周的开始结束时间

    这两天在做一个报表体统,其中涉及到了一个根据本周,上周,本月,上月的时间来进行查询的问题,在这个我就教一下大家怎么实现,大家如果有更好的实现方法的,我也希望大家能说出来,我们交流交流. 首先呢,我写了 ...

  6. js获取本周日期

    JS获取到本周的日期 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> &l ...

  7. js获得本季度的开始日期 结束日期

    var now = new Date(); //当前日期var nowMonth = now.getMonth()+1; //当前月var nowYear = now.getFullYear(); / ...

  8. PHP获取一年有多少周和每周开始和结束日期

    /*PHP获取当前日期是第几周和本周开始日期和本周结束日期*/ //$now = '2018-11-13';周二 public function getNowTimeInfo($now) { $str ...

  9. JS 获取 本周、本月、本季度、本年、上月、上周、上季度、去年

    工具类定义: /** * 日期范围工具类 */ var dateRangeUtil = (function () { /*** * 获得当前时间 */ this.getCurrentDate = fu ...

随机推荐

  1. thinkphp常用标签总结

    三元运算标签 {$v['member_id'] == 1 ? 正常 : 不正常} volist标签 <volist name="data" id="v"& ...

  2. HDU 1079 Calendar Game(规律博弈)

    题目链接:https://cn.vjudge.net/problem/HDU-1079 题目: Adam and Eve enter this year’s ACM International Col ...

  3. soapui 自动化教程

    本教程主要讲述对接口的自动化测试,略过压力测试.安全测试. 最终目标是通过groovy脚本执行一个文件,发送多个任务请求.验证返回值是否符合期望. 教程从soapui入门到groovy实现回传参数.生 ...

  4. hive 表类型

    Hive表有受控表(内部表).外部表.分区表.桶表四种.   内部表,就是一般的表,前面讲到的表都是内布标,当表定义被删除的时候,表中的数据随之一并被删除.   外部表,数据存在与否和表的定义互不约束 ...

  5. 【IDEA&&Eclipse】4、IntelliJ IDEA上操作GitHub

    IntelliJ IDEA集成了对GitHub的支持,使上传代码到GitHub和从GitHub下载代码更加方便快捷. 1. 分享代码到GitHub 首先需要在IntelliJ配置Git,如果没有正确配 ...

  6. groovy使用范型的坑

    java的范型 Map<String, Integer> map = new HashMap<>(); map.put("a", 100); map.put ...

  7. blfs(systemv版本)学习笔记-编译安装ligtdm显示管理器

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! ligtdm带有显示管理器和登录器,参照我的笔记安装xorg和i3后安装lightdm,就可以组成一个简易的桌面环境了 下面是l ...

  8. c语言学习笔记-continue

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! 一.continue函数意义 用于跳过本次循环余下语句,转去判断是否需要执行下次循环 二.continue使用案例 编写代码,对 ...

  9. hdu-3790 最短路径问题(双重权值)

    Problem Description 给你n个点,m条无向边,每条边都有长度d和花费p,给你起点s终点t,要求输出起点到终点的最短距离及其花费,如果最短距离有多条路线,则输出花费最少的. Input ...

  10. 洛谷P4007 小 Y 和恐怖的奴隶主(期望dp 矩阵乘法)

    题意 题目链接 Sol 首先不难想到一种暴力dp,设\(f[i][a][b][c]\)表示还有\(i\)轮没打,场上有\(a\)个1血,\(b\)个2血,\(c\)个三血 发现状态数只有\(s = 1 ...