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 相关文章推荐
JS解析XML的实现代码
Nov 12 Javascript
node.js中的path.sep方法使用说明
Dec 08 Javascript
Backbone.js框架中简单的View视图编写学习笔记
Feb 14 Javascript
浏览器复制插件zeroclipboard使用指南
Mar 26 Javascript
jquery.Callbacks的实现详解
Nov 30 Javascript
使用Bootrap和Vue实现仿百度搜索功能
Oct 26 Javascript
mongoose设置unique不生效问题的解决及如何移除unique的限制
Nov 07 Javascript
vue父组件向子组件传递多个数据的实例
Mar 01 Javascript
vue.js轮播图组件使用方法详解
Jul 03 Javascript
Vue监听一个数组id是否与另一个数组id相同的方法
Sep 26 Javascript
使用localStorage替代cookie做本地存储
Sep 25 Javascript
JavaScript Array.flat()函数用法解析
Sep 02 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
php5 non-thread-safe和thread-safe这两个版本的区别分析
2010/03/13 PHP
Yii中CGridView关联表搜索排序方法实例详解
2014/12/03 PHP
ThinkPHP框架实现的MySQL数据库备份功能示例
2018/05/24 PHP
PHP中str_split()函数的用法讲解
2019/04/11 PHP
Laravel框架查询构造器简单示例
2019/05/08 PHP
JavaScript面象对象设计
2008/04/28 Javascript
js中巧用cssText属性批量操作样式
2011/03/13 Javascript
javascript高级程序设计第二版第十二章事件要点总结(常用的跨浏览器检测方法)
2012/08/22 Javascript
IE中JS跳转丢失referrer问题的2个解决方法
2014/07/18 Javascript
jQuery层动画定位滑动效果的方法
2015/04/30 Javascript
javascript和jquery实现用户登录验证
2016/05/04 Javascript
使用jquery给指定的table动态添加一行、删除一行
2016/10/13 Javascript
vue 自动化路由实现代码
2019/09/03 Javascript
JavaScript实现tab栏切换效果
2020/03/16 Javascript
利用H5api实现时钟的绘制(javascript)
2020/09/13 Javascript
[00:11]战神迅矛
2019/03/06 DOTA
python实现简单点对点(p2p)聊天
2017/09/13 Python
Python使用selenium实现网页用户名 密码 验证码自动登录功能
2018/05/16 Python
手把手教你使用Python创建微信机器人
2019/04/29 Python
OpenCV搞定腾讯滑块验证码的实现代码
2019/05/18 Python
简单了解django缓存方式及配置
2019/07/19 Python
Python 异常处理Ⅳ过程图解
2019/10/18 Python
python发qq消息轰炸虐狗好友思路详解(完整代码)
2020/02/15 Python
Python单链表原理与实现方法详解
2020/02/22 Python
python3获取控制台输入的数据的具体实例
2020/08/16 Python
PyCharm 2020.2下配置Anaconda环境的方法步骤
2020/09/23 Python
linux centos 7.x 安装 python3.x 替换 python2.x的过程解析
2020/12/14 Python
应届生英语教师求职信
2013/11/05 职场文书
初中英语演讲稿
2014/04/29 职场文书
大学活动总结范文
2014/04/29 职场文书
干部竞争上岗演讲稿
2014/09/11 职场文书
区长工作作风个人整改措施
2014/10/01 职场文书
教师批评与自我批评材料
2014/10/16 职场文书
2015年母亲节活动策划方案
2015/05/04 职场文书
2015年保险公司内勤工作总结
2015/05/23 职场文书
如何写好一份优秀的工作总结?
2019/06/21 职场文书