//日期类型变量格式化,默认格式"xxxx-xx-xx" Date.prototype.Format = function (fmt) { fmt = fmt || "yyyy-MM-dd"; var o = { "M+": this.getMonth() + 1, //月份 "d+": this.getDate(), //日 "h+": this.getHours(), //小时 "m+": this.getMinutes(), //分 "s+": this.getSeconds(), //秒 "q+": Math.floor((this.getMonth() + 3) / 3), //季度 "S": this.getMilliseconds() //毫秒 }; if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length)); 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; } //添加天 Date.prototype.AddDays = function (d) { this.setDate(this.getDate() + d); return this; } //添加周 Date.prototype.AddWeeks = function (w) { this.addDays(w * 7); return this; } //添加月 Date.prototype.AddMonths = function (m) { var d = this.getDate(); this.setMonth(this.getMonth() + m); if (this.getDate() < d) this.setDate(0); return this; } //添加年 Date.prototype.AddYears = function (y) { var m = this.getMonth(); this.setFullYear(this.getFullYear() + y); if (m < this.getMonth()) { this.setDate(0); } return this; } //日期加减函数,strDate传入你需要的日期,格式"xxxx-xx-xx"。days传要加减的日期数,往前传正数,往后传负数 function AddDate(strDate, days, fmt) { var date = new Date(strDate); date.setDate(date.getDate() + days); return date.Format(fmt); }
标签:function,return,fmt,AddDays,js,var,Date,RegExp,AddYears From: https://www.cnblogs.com/itjeff/p/18152504