js获取n分钟(或n小时或n个月)后(或前)的时间(日期)

Posted 心欲无痕

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js获取n分钟(或n小时或n个月)后(或前)的时间(日期)相关的知识,希望对你有一定的参考价值。

  标题有点绕,其实意思就是根据系统当前时间,获取n分钟或n小时或n个月后的时间。

  例如:当前时间下,获取10分钟后的时间。

var date=new Date();     //1. js获取当前时间
var min=date.getMinutes();  //2. 获取当前分钟
date.setMinutes(min+10);  //3. 设置当前时间+10分钟:把当前分钟数+10后的值重新设置为date对象的分钟数
var y = date.getFullYear();
var m = (date.getMonth() + 1) < 10 ? ("0" + (date.getMonth() + 1)) : (date.getMonth() + 1);
var d = date.getDate() < 10 ? ("0" + date.getDate()) : date.getDate();
var h = date.getHours() < 10 ? (‘0‘ + date.getHours()) : date.getHours()
var f = date.getMinutes() < 10 ? (‘0‘ + date.getMinutes()) : date.getMinutes()
var s = date.getSeconds() < 10 ? (‘0‘ + date.getseconds()) : date.getSeconds()
var formatdate = y+‘-‘+m+‘-‘+d + " " + h + ":" + f + ":" + s;
console.log(formatdate) // 获取10分钟后的时间,格式为yyyy-mm-dd h:f:s

  同理,设置30分钟,60分钟或1个小时,5个小时,可以将小时转换为分钟,然后获取当前分钟再加上需要设置的时间即可。

 

  获取1个月后的日期:

var date=new Date();
date.setMonth(date.getMonth()+1);
var y = date.getFullYear();
var m = (date.getMonth() + 1) < 10 ? ("0" + (date.getMonth() + 1)) : (date.getMonth() + 1);
var d = date.getDate() < 10 ? ("0" + date.getDate()) : date.getDate();
var h = date.getHours() < 10 ? (‘0‘ + date.getHours()) : date.getHours()
var f = date.getMinutes() < 10 ? (‘0‘ + date.getMinutes()) : date.getMinutes()
var s = date.getSeconds() < 10 ? (‘0‘ + date.getseconds()) : date.getSeconds()
var formatwdate = y+‘-‘+m+‘-‘+d + " " + h + ":" + f + ":" + s; 
console.log(‘formatwdate‘, formatwdate)

  同理获取n个月后或n个月前的日期都是如此

以上是关于js获取n分钟(或n小时或n个月)后(或前)的时间(日期)的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript N(含跨年)个月日期

从十进制 (8, 0) 格式的日期获取 n-3 或 n-x 个月(约 90 天前),在 SQL Server 和 DB2 中具有年份变化影响

****timeago.js插件:jquery实现几分钟前几小时前几天前等时间差显示效果的代码实例

Shell文本过滤

js获取给定月份的N个月后的日期

Codeforces1438 D. Powerful Ksenia(构造,异或性质)