javascript显示上周、上个月日期的处理方法


Posted in Javascript onFebruary 03, 2016

本文实例介绍了javascript一周前、一个月前的实现代码,对于javascript日期处理进行了简单分析,分享给大家供大家参考,具体内容如下

<html>
<head>
 <title></title>
 <script src="../Script/jQuery/jquery-1.6.2.min.js" type="text/javascript"></script>
 <script src="../Script/MTHCRMWidget/MTHCRMWidget.js" type="text/javascript"></script>
 <script type="text/javascript">
  $(function () {
   myClick();//点击事件触发
  })

  //专门包装点击事件;
  function myClick() {
   $(".tbBtn").click(function () {
    var sid = $(this).attr("id");
    var agoDate = "";
    var Cdate = new Date();
    if (sid == "CbtnNull") {
     $("#txtCallCycleBegin").val("");
     $("#txtCallCyclecurrend").val("");
    } else if (sid == "CbtnMoon") {
     agoDate = ProcessDate(30);
     $("#txtCallCycleBegin").val("{0}-{1}-{2}".format(agoDate.Year, agoDate.Moon, agoDate.Day));
     $("#txtCallCyclecurrend").val("{0}-{1}-{2}".format(Cdate.getFullYear(), Cdate.getMonth() + 1, Cdate.getDate()));
    } else {
     agoDate = ProcessDate(7);
     $("#txtCallCycleBegin").val("{0}-{1}-{2}".format(agoDate.Year, agoDate.Moon, agoDate.Day));
     $("#txtCallCyclecurrend").val("{0}-{1}-{2}".format(Cdate.getFullYear(), Cdate.getMonth() + 1, Cdate.getDate()));
    }
   })
  }

  //处理日期的函数,返回一个字面量;
  function ProcessDate(type) {
   //1.0获取现在时间的年月日:
   var currentTime = new Date("2016-01-02"); //得到当前的时间
   var currentYear = currentTime.getFullYear(); //得到当前的年份
   var currentMoon = currentTime.getMonth() + 1; //得到当前的月份(系统默认为0-11,所以要加1才算是当前的月份)
   var currentDay = currentTime.getDate(); //得到当前的天数

   //2.0获取当前时间的一个月内的年月日:(一个月内的大众业务需求为:当前时间的月份-1,当前时间的天数+1)
   var agoDay = "";
   var agoMoon = currentMoon;
   var agoYear = currentYear;
   var max = "";
   switch (type) {
    case 30:
     agoDay = currentDay + 1;
     agoMoon = currentMoon - 1;
     max = new Date(agoYear, agoMoon, 0).getDate(); //获取上个月的总天数
     break;
    case 7:
     agoDay = currentDay - 6;
     if (agoDay < 0) {
      agoMoon = currentMoon - 1;//月份减1
      max = new Date(agoYear, agoMoon, 0).getDate(); //获取上个月的总天数
      agoDay = max + agoDay;//天数在上个月的总天数的基础上减去负数
     }
     break;
   }

   //3.0对处理的年月日作逻辑判断


   //如果beginDay > max(如果是当前时间的天数+1后的数值超过了上个月的总天数: 天数变为1,月份增加1)
   if (agoDay > max) {
    agoDay = 1;
    agoMoon += 1;
   }

   //如果月份当月为1月的时候, 那么一个月内: 年:-1 月:12 日:依然不变 
   if (agoMoon == 0) {
    agoMoon = 12;
    agoYear = currentYear - 1;
   }

   //4.0对已经处理好的数据作格式处理(单位数则自动补零)
   currentMoon = Appendzero(currentMoon);
   currentDay = Appendzero(currentDay);
   agoMoon = Appendzero(agoMoon);
   agoDay = Appendzero(agoDay);

   //5.0帮助代码
   console.log("当前时间为:{0}-{1}-{2}".format(currentYear, currentMoon, currentDay));
   console.log("一个月前的时间为{0}-{1}-{2}".format(agoYear, agoMoon, agoDay));

   return { "Year": agoYear, "Moon": agoMoon, "Day": agoDay };
  }

  //处理各位数为零的数字(单位数则加0)
  function Appendzero(obj) {
   if (obj < 10) {
    return "0" + obj;
   } else { 
    return obj;
   }
  }

 </script>
</head>
<body>
 <input type="button" class="tbBtn" id="CbtnNull" style="background-color:#e3e3e3" value="不限"/>
 <input type="button" class="tbBtn" id="CbtnMoon" style="width: 80px; margin-left: 5px; margin-right: 5px;" value="一个月内"/>
 <input type="button" class="tbBtn" id="CbtnWeek" style="width: 80px; margin-left: 5px; margin-right: 5px;" value="一周内"/>
 <input id = "txtCallCycleBegin" type="text"/>
 <input id = "txtCallCyclecurrend" type="text"/>
</body>
</html>

以上就是本文的全部内容,希望能够帮助大家更好的解决javascript日期处理问题。

Javascript 相关文章推荐
一段效率很高的for循环语句使用方法
Aug 13 Javascript
javascript中xml操作实现代码
Nov 21 Javascript
五段实用的js高级技巧
Dec 20 Javascript
js编码之encodeURIComponent使用介绍(asp,php)
Mar 01 Javascript
Javascript 鼠标移动上去 滑块跟随效果代码分享
Nov 23 Javascript
基于jQuery的网页影音播放器jPlayer的基本使用教程
Mar 08 Javascript
微信小程序 vidao实现视频播放和弹幕的功能
Nov 02 Javascript
基于vuejs+webpack的日期选择插件
May 21 Javascript
一篇文章让你彻底弄懂JS的事件冒泡和事件捕获
Aug 14 Javascript
javascript获取图片的top N主色值方法详解
Jan 26 Javascript
vue鼠标悬停事件实例详解
Apr 01 Javascript
vue使用keep-alive保持滚动条位置的实现方法
Apr 09 Javascript
原生JavaScript实现动态省市县三级联动下拉框菜单实例代码
Feb 03 #Javascript
AngularJS向后端ASP.NET API控制器上传文件
Feb 03 #Javascript
javascript DIV实现跟随鼠标移动
Mar 19 #Javascript
javascript鼠标右键菜单自定义效果
Dec 08 #Javascript
JavaScript获取当前运行脚本文件所在目录的方法
Feb 03 #Javascript
JavaScript获取对象在页面中位置坐标的方法
Feb 03 #Javascript
基于jQuery实现select下拉选择可输入附源码下载
Feb 03 #Javascript
You might like
php获取目录所有文件并将结果保存到数组(实例)
2013/10/25 PHP
php实现网页缓存的工具类分享
2015/07/14 PHP
PHP批量修改文件名称的方法分析
2017/02/27 PHP
JavaScript写的一个DIV 弹出网页对话框
2009/08/14 Javascript
jquery必须知道的一些常用特效方法及使用示例(整理)
2013/06/24 Javascript
JavaScript计划任务后台运行的方法
2015/12/18 Javascript
JS实现图片平面旋转的方法
2016/03/01 Javascript
Vue实现双向绑定的方法
2016/12/22 Javascript
浅谈jQuery操作类数组的工具方法
2016/12/23 Javascript
JS基于贪心算法解决背包问题示例
2017/11/27 Javascript
基于webpack-hot-middleware热加载相关错误的解决方法
2018/02/22 Javascript
Angular6笔记之封装http的示例代码
2018/07/27 Javascript
JS加密插件CryptoJS实现的Base64加密示例
2020/08/16 Javascript
JavaScript使用面向对象实现的拖拽功能详解
2019/06/12 Javascript
vue中如何实现后台管理系统的权限控制的方法步骤
2019/09/05 Javascript
[32:56]完美世界DOTA2联赛PWL S3 Rebirth vs CPG 第二场 12.11
2020/12/16 DOTA
Python环境变量设置方法
2016/08/28 Python
利用python打印出菱形、三角形以及矩形的方法实例
2017/08/08 Python
win10系统下Anaconda3安装配置方法图文教程
2018/09/19 Python
python绘制简单彩虹图
2018/11/19 Python
Django之编辑时根据条件跳转回原页面的方法
2019/08/21 Python
CSS3弹性盒模型开发笔记(三)
2016/04/26 HTML / CSS
Spartoo西班牙官网:法国时尚购物网站
2018/03/27 全球购物
ColourPop美国官网:卡拉泡泡,洛杉矶彩妆品牌
2019/04/28 全球购物
中文系学生自荐信范文
2013/11/13 职场文书
自我评价的写作规则
2014/01/06 职场文书
广告词串烧
2014/03/19 职场文书
党的群众路线教育实践活动个人对照检查材料(校长)
2014/11/05 职场文书
2014年保密工作总结
2014/11/22 职场文书
暑假安全保证书
2015/02/28 职场文书
党员自我评价范文2015
2015/03/03 职场文书
民事诉讼答辩状范文
2015/05/21 职场文书
春风化雨观后感
2015/06/11 职场文书
宝宝满月祝酒词
2015/08/10 职场文书
送给教师们,到底该如何写好教学反思?
2019/07/02 职场文书
Nginx如何配置Http、Https、WS、WSS的方法步骤
2021/05/11 Servers