//Demo:new Date().format("yyyy-MM-dd hh:mm:ss.SSS")
Date.prototype.format = function (format) {
var o = {
"M+": this.getMonth() + 1, //month
"d+": this.getDate(), //day
"h+": this.getHours(), //hour
"m+": this.getMinutes(), //minute
"s+": this.getSeconds(), //second
"q+": Math.floor((this.getMonth() + 3) / 3), //quarter
"S": this.getMilliseconds() //millisecond
}
if (/(y+)/.test(format)) format = format.replace(RegExp.$1,
(this.getFullYear() + "").substr(4 - RegExp.$1.length));
for (var k in o) if (new RegExp("(" + k + ")").test(format))
format = format.replace(RegExp.$1,
RegExp.$1.length == 1 ? o[k] :
("00" + o[k]).substr(("" + o[k]).length));
return format;
} Date.prototype.addYears = function (num) {
num = parseInt(num); var sYear = this.getFullYear();
var sMonth = this.getMonth();
var sDay = this.getDate(); var eYear = sYear + num;
var eMonth = sMonth;
var eDay = sDay; var eDate = new Date(eYear, eMonth, eDay); while (eDate.getMonth() != eMonth) {
eDay--;
eDate = new Date(eYear, eMonth, eDay);
} var times = eDate.getTime() - new Date(sYear, sMonth, sDay).getTime();
return new Date(new Date().getTime() + times);
}
//Demo:new Date().addMonths(-1)
Date.prototype.addMonths = function (num) {
num = parseInt(num); var sYear = this.getFullYear();
var sMonth = this.getMonth() + 1;
var sDay = this.getDate(); var eYear = sYear;
var eMonth = sMonth + num;
var eDay = sDay;
while (eMonth > 12) {
eYear++;
eMonth -= 12;
}
while (eMonth <= 0) {
eYear--;
eMonth += 12;
} var eDate = new Date(eYear, eMonth - 1, eDay); while (eDate.getMonth() != eMonth - 1) {
eDay--;
eDate = new Date(eYear, eMonth - 1, eDay);
} var times = eDate.getTime() - new Date(sYear, sMonth - 1, sDay).getTime();
return new Date(new Date().getTime() + times);
} Date.prototype.addDates = function (num) {
return this.addHours(num * 24);
}
Date.prototype.addHours = function (num) {
return this.addMinutes(num * 60);
}
Date.prototype.addMinutes = function (num) {
return this.addSeconds(num * 60);
} Date.prototype.addSeconds = function (num) {
num = parseInt(num);
return new Date(new Date().getTime() + num * 1000);
}

js 日期格式化及日期增减的更多相关文章

  1. C# 日期格式化以及日期常用方法

    一.日期格式化 1.ToString() d 月中的某一天.一位数的日期没有前导零. dd 月中的某一天.一位数的日期有一个前导零. ddd 周中某天的缩写名称,在 AbbreviatedDayNam ...

  2. Mysql 日期格式化 复杂日期区间查询

    前言 最近在做项目涉及到Mysql的复杂日期查询,日期查询其实在数据库中查询其实还是用的挺多的,比如查询开始日期到结束日期的区间信息,查询日期小于有效日期的信息,查询当天的日期,明天的日期,做比较等. ...

  3. js解析格式化json日期

    代码: function jsonDateFormat(jsonDate) {//json日期格式转换为正常格式    try {        var date = new Date(parseIn ...

  4. js返回格式化的日期(年-月-日)

    var d = new Date(); var str = d.getFullYear()+"-"+(d.getMonth()+1)+"-"+d.getDate ...

  5. 161226、js日期格式化

    JavaScript Date format(js日期格式化) 方法一:// 对Date的扩展,将 Date 转化为指定格式的String // 月(M).日(d).小时(h).分(m).秒(s).季 ...

  6. JS 日期格式化

    <script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"& ...

  7. 【JavaScript】 knockout.js 日期格式化借助【momentjs】

    源:Knockout.js 日期格式化 源:momentjs

  8. js日期格式化

    <html> <head> <script> function test(){ //Js获取当前日期时间及其它操作 var myDate = new Date(); ...

  9. JS获取当前日期时间及JS日期格式化

    Js获取当前日期时间: var myDate = new Date(); myDate.getYear(); //获取当前年份(2位) myDate.getFullYear(); //获取完整的年份( ...

随机推荐

  1. (转)Linux运维MySQL必会面试题100道

    老男孩教育Linux运维班MySQL必会面试题100道 (1)基础笔试命令考察 (要求:每两个同学一组,一个口头考,一个上机实战作答,每5个题为一组,完成后换位) 1.开启MySQL服务 2.检测端口 ...

  2. display:inline-block会出现的问题

    用一个父元素包裹三个子元素,将父元素的white-space设置为nowrap;这样子元素就会排在父元素中而不会换行了,通过这种方式,我们也就可以在移动端使用包裹元素的margin值实现类似的单页应用 ...

  3. plsql数据库异常---plsql 登录后,提示数据库字符集(AL32UTF8)和客户端字符集(ZHS16GBK)不一致

    今天遇到这个问题网上搜了一下答案找到了 转贴 http://blog.csdn.net/lidew521/article/details/8546155 plsql 登录后提示: Database c ...

  4. [转载]java.ByteArrayInputStream与ByteArrayOutputStream再次理解

    一次看到ByteArrayOutputStream的时候是在Nutch的部分源码,后来在涉及IO操作时频频发现这两个类的踪迹,觉得确实是很好用,所以把它们的用法总结一下. ByteArrayOutpu ...

  5. Android文字识别之tesseract的使用

    关于tesseract识别工具有Google提供的版本有tesseract-android-tools,不过还有一个tesseract-two也是非常好用的,这里我们使用的是tesseract-two ...

  6. oracle connect by用法

    先用scott用户下的emp表做实验.emp表有个字段,一个是empno(员工编号),另一个是mgr(上级经理编号)下面是表中所有数据 1 select * from emp start with e ...

  7. Intellij IDEA 远程debug、远程tomcat部署项目

  8. MySql的备份还原

    备份数据是数据库管理最常用的操作.为了保证数据库中数据的安全,数据管理员需要定期进行数据备份.一旦数据库遭到破坏,便可通过备份的文件来还原数据库.因此,数据备份是一项很重要的工作. 数据备份 使用my ...

  9. FLUSH TABLES WITH READ LOCK 和 LOCK TABLES 之种种

    1.FLUSH TABLES WITH READ LOCK 这个命令是全局读锁定,执行了命令之后所有库所有表都被锁定只读.一般都是用在数据库联机备份,这个时候数据库的写操作将被阻塞,读操作顺利进行. ...

  10. Maven是什么

    一.Maven是什么 Maven是一个Apache公司的开源项目,是项目构建工具.用来管理依赖. 1.Maven的好处 使用maven可以在项目中不用导入项目依赖的jar包,省去了下载和导入jar包的 ...