js 时间的封装
js 时间的封装
别人说我名字很长 发表于2年前
js 时间的封装
  • 发表于 2年前
  • 阅读 66
  • 收藏 2
  • 点赞 0
  • 评论 0

新睿云服务器60天免费使用,快来体验!>>>   

js的时间对象的操作很频繁,大象封装了下时间对象,使用起来是更方便,下面上代码

<script type="text/javascript">	

    //时间对象封装
    function myDate2(date){
    	this.date = new Date(date);
    	this.Y = function(){
    		return this.date.getFullYear();
    	}
    	this.m = function(){
    		var m = (this.date.getMonth()+1).toString();
    		if(m.length==1) return "0"+m;
    		return m;
    	}
    	this.d = function(){
    		var d = this.date.getDate().toString();
    		if(d.length==1) return "0"+d;
    		return d;
    	}
    }

    //时间对象格式化
    myDate2.prototype.Format = function(format){
    	if(format=="yyyy"){
    		return this.Y();
    	}else if(format=="yyyy-mm"){
    		return this.Y()+"-"+this.m();
    	}else if(format=="yyyy-mm-dd"){
    		return this.Y()+"-"+this.m()+"-"+this.d();
    	}
    	throw new error("非法的格式");
    }

    //时间对象加减
    myDate2.prototype.AddDate = function(Y,m,d){
    	this.date.setFullYear(parseInt(this.Y())+Y);
    	this.date.setMonth(parseInt(this.m())+m-1);
    	this.date.setDate(parseInt(this.d())+d);
    	return this;
    }

    //工厂
    function myDate(date){
    	return new myDate2(date);
    }

    //举个栗子
    var d = myDate("2016-02-14");//将字符串时间实例化myDate2对象
    d.AddDate(0,0,10);//加10天
    console.log(d.Format("yyyy-mm-dd"));//格式化输出2016-02-24
</script>




  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 53
博文 241
码字总数 95112
×
别人说我名字很长
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: