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 相关文章推荐
基于prototype的validation.js发布2.3.4新版本,让你彻底脱离表单验证的烦恼
Dec 06 Javascript
jquery之empty()与remove()区别说明
Sep 10 Javascript
jQuery EasyUI API 中文文档 - Calendar日历使用
Oct 19 Javascript
javascript之Partial Application学习
Jan 10 Javascript
JS实现的论坛Ajax打分效果完整实例
Oct 31 Javascript
jQuery插件formValidator自定义函数扩展功能实例详解
Nov 25 Javascript
javascript基本算法汇总
Mar 09 Javascript
vue中element-ui表格缩略图悬浮放大功能的实例代码
Jun 26 Javascript
Vue+axios+WebApi+NPOI导出Excel文件实例方法
Jun 05 Javascript
重置Redux的状态数据的方法实现
Nov 18 Javascript
JavaScript事件冒泡机制原理实例解析
Jan 14 Javascript
JavaScript实现滚动加载更多
Dec 27 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
请离开include_once和require_once
2013/07/18 PHP
thinkphp autoload 命名空间自定义 namespace
2015/07/17 PHP
网页防止tab键的使用快速解决方法
2013/11/07 Javascript
提取jquery的ready()方法单独使用示例
2014/03/25 Javascript
jquery 实现两Select 标签项互调示例代码
2014/09/25 Javascript
Web表单提交之disabled问题js解决方法
2015/01/13 Javascript
JavaScript中的fontsize()方法使用详解
2015/06/08 Javascript
Bootstrap的图片轮播示例代码
2015/08/31 Javascript
jquery遍历标签中自定义的属性方法
2016/09/17 Javascript
nodejs连接mysql数据库简单封装示例-mysql模块
2017/04/10 NodeJs
angularjs中ng-bind-html的用法总结
2017/05/23 Javascript
laypage+SpringMVC实现后端分页
2019/07/27 Javascript
vue quill editor 使用富文本添加上传音频功能
2020/01/14 Javascript
vue实现员工信息录入功能
2020/06/11 Javascript
Python模块WSGI使用详解
2018/02/02 Python
Python中property属性实例解析
2018/02/10 Python
Python拼接微信好友头像大图的实现方法
2018/08/01 Python
python判断列表的连续数字范围并分块的方法
2018/11/16 Python
Python pandas DataFrame操作的实现代码
2019/06/21 Python
Python assert语句的简单使用示例
2019/07/28 Python
手把手教你pycharm专业版安装破解教程(linux版)
2019/09/26 Python
Pytorch学习之torch用法----比较操作(Comparison Ops)
2020/06/28 Python
JBL澳大利亚官方商店:扬声器、耳机和音响系统
2018/05/24 全球购物
介绍一下SQL Server里面的索引视图
2016/07/31 面试题
商务英语求职自荐信范文
2013/12/24 职场文书
粗加工管理制度
2014/02/04 职场文书
门前三包责任书
2014/04/15 职场文书
项目采购员岗位职责
2014/04/15 职场文书
期末学生评语大全
2014/04/24 职场文书
大学毕业生个人自荐书
2014/07/02 职场文书
超级礼物观后感
2015/06/15 职场文书
公司劳动纪律管理制度
2015/08/04 职场文书
《田忌赛马》教学反思
2016/02/19 职场文书
初中生物教学反思
2016/02/20 职场文书
Vue+Element UI实现概要小弹窗的全过程
2021/05/30 Vue.js
Android基于Fresco实现圆角和圆形图片
2022/04/01 Java/Android