JS获取本周周一,周末及获取任意时间的周一周末功能示例


Posted in Javascript onFebruary 09, 2017

本文实例讲述了JS获取本周周一,周末及获取任意时间的周一周末功能。分享给大家供大家参考,具体如下:

项目需要获取本周及任意一天的周一及周末 需格式化,示例代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>星期</title>
<script type="text/javascript" language="javascript" >
/**
 * @author zhuyangxing
 */
(function() {
  function util_date() {
    var _today=new Date();
    this.today=_today;
    this.year=_today.getYear()+1900;//当前年份
    this.Month_a=_today.getMonth();
    this.Month=this.Month_a+1;//当前月份
    this.day=_today.getDate();//当前日期
    this.date=_today.getDay()==0?7:_today.getDay();//本周第几天 因系统会把周日作为第0天
    this.Monday="";
    this.Sunday="";
    this.day_one="";
  }
  Date.prototype.pattern=function(fmt) {
    var o = {
    "M+" : this.getMonth()+1, //月份
    "d+" : this.getDate(), //日
    "h+" : this.getHours()%12 == 0 ? 12 : this.getHours()%12, //小时
    "H+" : this.getHours(), //小时
    "m+" : this.getMinutes(), //分
    "s+" : this.getSeconds(), //秒
    "q+" : Math.floor((this.getMonth()+3)/3), //季度
    "S" : this.getMilliseconds() //毫秒
    };
    var week = {
    "0" : "/u65e5",
    "1" : "/u4e00",
    "2" : "/u4e8c",
    "3" : "/u4e09",
    "4" : "/u56db",
    "5" : "/u4e94",
    "6" : "/u516d"
    };
    if(/(y+)/.test(fmt)){
      fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));
    }
    if(/(E+)/.test(fmt)){
      fmt=fmt.replace(RegExp.$1, ((RegExp.$1.length>1) ? (RegExp.$1.length>2 ? "/u661f/u671f" : "/u5468") : "")+week[this.getDay()+""]);
    }
    for(var k in o){
      if(new RegExp("("+ k +")").test(fmt)){
        fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));
      }
    }
    return fmt;
  },
  util_date.prototype = {
      newToday : function(_today){
        this.today=_today;
        this.year=_today.getYear()+1900;//当前年份
        this.Month_a=_today.getMonth();
        this.Month=this.Month_a+1;//当前月份
        this.day=_today.getDate();//当前日期
        this.date=_today.getDay()==0?7:_today.getDay();//本周第几天 因系统会把周日作为第0天
        this.Monday="";
        this.Sunday="";
        this.day_one="";
      },
      getMonday:function(){
        if(this.Monday.length!=0){
          return this.Monday;
        }else{
          var _monday = new Date(this.year,this.Month_a,this.day-this.date+1);
          this.Monday = _monday;
          return _monday;
        }
      },
      getSunday:function(){
        if(this.Sunday.length!=0){
          return this.Sunday;
        }else{
          var _Sunday = new Date(this.year,this.Month_a,this.day-this.date+7);
          this.Sunday = _Sunday;
          return _Sunday;
        }
      },
      getPreviousMonday:function(Monday){
          var _monday = new Date(Monday.getYear()+1900,Monday.getMonth(),Monday.getDate()-7);
          return _monday;
      },
      getPreviousSunday:function(Monday){
          var _Sunday = new Date(Monday.getYear()+1900,Monday.getMonth(),Monday.getDate()-1);
          this.Sunday = _Sunday;
          return _Sunday;
      },
      getNextMonday:function(Monday){
        var _monday = new Date(Monday.getYear()+1900,Monday.getMonth(),Monday.getDate()+7);
        return _monday;
      },
      getNextSunday:function(Monday){
        var _Sunday = new Date(Monday.getYear()+1900,Monday.getMonth(),Monday.getDate()+13);
        this.Sunday = _Sunday;
        return _Sunday;
      }
  };
  window.util_date = new util_date();
})();
document.write(window.util_date.getMonday().pattern("yyyy-MM-dd"));
</script>
</head>
<body >
</body>
</html>

如果需要可直接在项目中引入该文件 使用window.util_date.getMonday().pattern("yyyy-MM-dd");可获得2017-1-24类型的字符串

window.util_date.newToday("2017-1-1");设置当前日期
Javascript 相关文章推荐
Jquery下attr和removeAttr的使用方法
Dec 28 Javascript
js+JQuery返回顶部功能如何实现
Dec 03 Javascript
前端必备神器 Snap.svg 弹动效果
Nov 10 Javascript
编写简单的jQuery提示插件
Dec 21 Javascript
深入剖析javascript中的exec与match方法
May 18 Javascript
JQuery为元素添加样式的实现方法
Jul 20 Javascript
jQuery实现节点的追加、替换、删除、复制功能示例
Jul 11 jQuery
javascript流程控制语句集合
Sep 18 Javascript
vuejs实现ready函数加载完之后执行某个函数的方法
Aug 31 Javascript
如何解决vue2.0下IE浏览器白屏问题
Sep 13 Javascript
js使用文档就绪函数动态改变页面内容示例【innerHTML、innerText】
Nov 07 Javascript
vue商城中商品“筛选器”功能的实现代码
Jul 01 Javascript
简单谈谈Javascript函数中的arguments
Feb 09 #Javascript
javascript 中设置window.location.href跳转无效问题解决办法
Feb 09 #Javascript
微信小程序之picker日期和时间选择器
Feb 09 #Javascript
BootStrap 弹出层代码
Feb 09 #Javascript
jQuery插件form-validation-engine正则表达式操作示例
Feb 09 #Javascript
javascript history对象详解
Feb 09 #Javascript
jquery dialog获取焦点的方法
Feb 09 #Javascript
You might like
PHP使用stream_context_create()模拟POST/GET请求的方法
2016/04/02 PHP
Thinkphp 框架配置操作之动态配置、扩展配置及批量配置实例分析
2020/05/15 PHP
Mootools 1.2教程 同时进行多个形变动画
2009/09/15 Javascript
javascript中parseInt()函数的定义和用法分析
2014/12/20 Javascript
jQuery实现给页面换肤的方法
2015/05/30 Javascript
jquery实现滑动特效代码
2015/08/10 Javascript
jQuery Validate初步体验(一)
2015/12/12 Javascript
多个js毫秒倒计时同时进行效果
2016/01/05 Javascript
Bootstrap组件系列之福利篇几款好用的组件(推荐二)
2016/07/12 Javascript
Javascript中的神器——Promise
2017/02/08 Javascript
浅谈Vue数据绑定的原理
2018/01/08 Javascript
解决vue处理axios post请求传参的问题
2018/03/05 Javascript
Vue中使用Sortable的示例代码
2018/04/07 Javascript
jquery中为什么能用$操作
2019/06/18 jQuery
Echarts实现单条折线可拖拽效果
2019/12/19 Javascript
小程序跨页面交互的作用与方法详解
2020/01/07 Javascript
解决Vue-Router升级导致的Uncaught (in promise)问题
2020/08/07 Javascript
python使用sorted函数对列表进行排序的方法
2015/04/04 Python
Python中实现单例模式的n种方式和原理
2018/11/14 Python
python实现烟花小程序
2019/01/30 Python
python判断无向图环是否存在的示例
2019/11/22 Python
python filecmp.dircmp实现递归比对两个目录的方法
2020/05/22 Python
基于HTML5的WebGL经典3D虚拟机房漫游动画
2017/11/15 HTML / CSS
COS美国官网:知名服装品牌
2019/04/08 全球购物
俄罗斯在线水暖商店:Perfecto.ru
2019/10/25 全球购物
新闻专业个人求职信
2013/12/19 职场文书
通信研究生自荐信
2014/02/01 职场文书
趣味比赛活动方案
2014/02/15 职场文书
《赠汪伦》教学反思
2014/04/12 职场文书
亲子运动会的活动方案
2014/08/17 职场文书
网球场地租赁协议范本
2014/10/07 职场文书
企业财务经理岗位职责
2015/04/08 职场文书
2016年圣诞节寄语(一句话)
2015/12/07 职场文书
详解PHP设计模式之依赖注入模式
2021/05/25 PHP
gojs实现蚂蚁线动画效果
2022/02/18 Javascript
Apache SkyWalking 监控 MySQL Server 实战解析
2022/09/23 Servers