欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2024-02-02 21:26:46
本文实例讲述了js获取本周周一,周末及获取任意时间的周一周末功能。分享给大家供大家参考,具体如下: 项目需要获取本周及任意一天的周一及周末 需格式化,示例代码如下:...

本文实例讲述了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");设置当前日期

ps:这里再为大家推荐几款时间及日期相关工具供大家参考使用:

在线日期/天数计算器:

在线日期计算器/相差天数计算器:

在线日期天数差计算器:

unix时间戳(timestamp)转换工具:

更多关于javascript相关内容感兴趣的读者可查看本站专题:《javascript时间与日期操作技巧总结》、《javascript查找算法技巧总结》、《javascript错误与调试技巧总结》、《javascript数据结构与算法技巧总结》、《javascript遍历算法与技巧总结》及《javascript数学运算用法总结

希望本文所述对大家javascript程序设计有所帮助。