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 获得绝对,相对位置的坐标方法
Feb 09 Javascript
js生成随机数的过程解析
Nov 24 Javascript
jquery悬浮提示框完整实例
Jan 13 Javascript
JavaScript根据CSS的Media Queries来判断浏览设备的方法
May 10 Javascript
jQuery插件echarts设置折线图中折线线条颜色和折线点颜色的方法
Mar 03 Javascript
JavaScript实现滑动导航栏效果
Aug 30 Javascript
详解wow.js中各种特效对应的类名
Sep 13 Javascript
原生javascript实现文件异步上传的实例讲解
Oct 26 Javascript
详解react-router 4.0 下服务器如何配合BrowserRouter
Dec 29 Javascript
Vue中v-for的数据分组实例
Mar 07 Javascript
vue-cli项目优化方法- 缩短首屏加载时间
Apr 01 Javascript
基于vue框架手写一个notify插件实现通知功能的方法
Mar 31 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
一些星际专用术语解释
2020/03/04 星际争霸
成本8450万,票房仅2亿,口碑两极分化,又一部DC电影扑街了
2020/04/09 欧美动漫
PHP 输出URL的快捷方式示例代码
2013/09/22 PHP
php中的比较运算符详解
2013/10/28 PHP
PHP使用strtotime计算两个给定日期之间天数的方法
2015/03/18 PHP
Laravel中任务调度console使用方法小结
2017/05/07 PHP
javascript中使用replaceAll()函数实现字符替换的方法
2010/12/25 Javascript
再次分享18个非常棒的jQuery表格插件
2011/04/10 Javascript
非常棒的10款jQuery 幻灯片插件
2011/06/14 Javascript
js中eval()函数和trim()去掉字符串左右空格应用
2013/02/02 Javascript
利用JQuery动画制作滑动菜单项效果实现步骤及代码
2013/02/07 Javascript
jquery实现简单的无缝滚动
2015/04/15 Javascript
js 基础篇必看(点击事件轮播图的简单实现)
2016/08/20 Javascript
js实现HashTable(哈希表)的实例分析
2016/11/21 Javascript
jquery实现点击页面回到顶部
2016/11/23 Javascript
discuz表情的JS提取方法分析
2017/03/22 Javascript
VueJs监听window.resize方法示例
2018/01/17 Javascript
tween.js缓动补间动画算法示例
2018/02/13 Javascript
vue实现分页组件
2020/06/16 Javascript
原生js实现移动端Touch轮播图的方法步骤
2019/01/03 Javascript
python在控制台输出进度条的方法
2015/06/20 Python
python web基础之加载静态文件实例
2018/03/20 Python
python和c语言的主要区别总结
2019/07/07 Python
python之PyQt按钮右键菜单功能的实现代码
2019/08/17 Python
Django项目后台不挂断运行的方法
2019/08/31 Python
Python编译为二进制so可执行文件实例
2019/12/23 Python
python try...finally...的实现方法
2020/11/25 Python
详解CSS3的perspective属性设置3D变换距离的方法
2016/05/23 HTML / CSS
Mountain Warehouse澳大利亚官网:欧洲家庭户外品牌倡导者
2016/11/20 全球购物
铁路个人事迹材料
2014/01/30 职场文书
公司人事专员岗位职责
2014/08/11 职场文书
酒店辞职书范文
2015/02/26 职场文书
MySQL连接查询你真的学会了吗?
2021/06/02 MySQL
JavaScript阻止事件冒泡的方法
2021/12/06 Javascript
Go语言实现一个简单的并发聊天室的项目实战
2022/03/18 Golang
使用 Docker Compose 构建复杂的多容器App
2022/04/30 Servers