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 相关文章推荐
dotopAlert 提示用户需安装播放器的代码
Sep 17 Javascript
JavaScript 实现打印,打印预览,打印设置
Dec 30 Javascript
javascript定义变量时带var与不带var的区别分析
Jan 12 Javascript
javascript 使用for循环时该注意的问题-附问题总结
Aug 19 Javascript
jquery实现点击变换导航样式的方法
Aug 31 Javascript
js添加绑定事件的方法
May 15 Javascript
javaScript产生随机数的用法小结
Apr 21 Javascript
JS中获取 DOM 元素的绝对位置实例详解
Apr 23 Javascript
JS实现的简单折叠展开动画效果示例
Apr 28 Javascript
js实现京东秒杀倒计时功能
Jan 21 Javascript
修改vue源码实现动态路由缓存的方法
Jan 21 Javascript
微信小程序实现滑动操作代码
Apr 23 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/07/04 PHP
php取得字符串首字母的方法
2015/03/25 PHP
PHP处理数组和XML之间的互相转换
2016/06/02 PHP
PHP封装返回Ajax字符串和JSON数组的方法
2017/02/17 PHP
PHP设计模式之工厂模式(Factory Pattern)的讲解
2019/03/21 PHP
PHP如何获取Cookie并实现模拟登录
2020/07/16 PHP
许愿墙中用到的函数
2006/10/07 Javascript
实现复选框全选/全不选切换
2006/12/23 Javascript
javascript 避免闭包引发的问题
2009/03/17 Javascript
jQuery 拖动层(在可视区域范围内)
2012/05/24 Javascript
jquery ajax,ashx,json的用法总结
2014/02/12 Javascript
JavaScript中的定时器之Item23的合理使用
2015/10/30 Javascript
深入解析JavaScript编程中的this关键字使用
2015/11/09 Javascript
jQuery插件扩展测试实例
2016/06/21 Javascript
js实现打地鼠小游戏
2017/02/13 Javascript
JS中利用localStorage防止页面动态添加数据刷新后数据丢失
2017/03/10 Javascript
js中document.write和document.writeln的区别
2018/03/11 Javascript
JS实现的检验身份证格式并输出出生日期,年龄,性别,出生地示例
2019/05/17 Javascript
在服务器端实现无间断部署Python应用的教程
2015/04/16 Python
解决python中使用plot画图,图不显示的问题
2018/07/04 Python
Python3.5面向对象编程图文与实例详解
2019/04/24 Python
Python 实现Numpy中找出array中最大值所对应的行和列
2019/11/26 Python
python 检测图片是否有马赛克
2020/12/01 Python
Html5游戏开发之乒乓Ping Pong游戏示例(一)
2013/01/21 HTML / CSS
Html5让容器充满屏幕高度或自适应剩余高度的布局实现
2020/05/14 HTML / CSS
关于canvas.toDataURL 在iOS运行失败的问题解决
2020/09/16 HTML / CSS
韩国乐天网上商城:Lotte iMall
2021/02/03 全球购物
Discard Protocol抛弃协议的作用是什么
2015/10/10 面试题
宣传活动总结范文
2014/07/01 职场文书
党员自我剖析材料
2014/08/31 职场文书
药店营业员岗位职责
2015/04/14 职场文书
工作简报范文
2015/07/21 职场文书
图书借阅制度范本
2015/08/06 职场文书
mysql知识点整理
2021/04/05 MySQL
MySQL 5.7常见数据类型
2021/07/15 MySQL
Java中的Kafka为什么性能这么快及4大核心详析
2022/09/23 Java/Android