/**
* 获取时间格式为:1970-01-01 00:00
* @param {参数} params
* 属性 类型 默认值 必填 说明
* date Date new Date() 否 Date对象
* ms int 0 否 获取距当前ms毫秒时间
* dateFormat String / 否 日期分隔符
* timeFormat string : 否 时间分隔符
*
*/
const formatTime = (params) => {
const ms = (!params.ms ? 0 : params.ms);
const date = !params.data ? new Date(new Date().getTime() + ms) : new Date(params.date.getTime() + ms);
const year = date.getFullYear();
const month = date.getMonth() + 1;
const day = date.getDate();
const hour = date.getHours();
const minute = date.getMinutes();
const second = date.getSeconds();
const dateFormat = (!params.dateFormat) ? "/" : params.dateFormat;
const timeFormat = (!params.timeFormat) ? ":" : params.timeFormat;
return [year, month, day].map(formatNumber).join(dateFormat) + ' ' + [hour, minute, second].map(formatNumber).join(timeFormat);
} const formatNumber = n => {
n = n.toString();
return n[1] ? n : '0' + n;
}

测试案例:

<!DOCTYPE html>
<html> <head>
<meta charset="utf-8" name="viewport" content="width=device-width;initscale=1.0" />
<title>js获取当前/未来时间</title>
</head> <body>
<h1>5分钟前时间:<span id="beforeFiveMinuteTime"></span></h1>
<h1>当前时间:<span id="nowTime"></span></h1>
<h1>5分钟后时间:<span id="afterFiveMinuteTime"></span></h1> <script type="text/javascript">
/**
* 获取时间格式为:1970-01-01 00:00
* @param {参数} params
* 属性 类型 默认值 必填 说明
* date Date new Date() 否 Date对象
* ms int 0 否 获取距当前ms毫秒时间
* dateFormat String / 否 日期分隔符
* timeFormat string : 否 时间分隔符
*
*/
const formatTime = (params) => {
const ms = (!params.ms ? 0 : params.ms);
const date = !params.data ? new Date(new Date().getTime() + ms) : new Date(params.date.getTime() + ms);
const year = date.getFullYear();
const month = date.getMonth() + 1;
const day = date.getDate();
const hour = date.getHours();
const minute = date.getMinutes();
const second = date.getSeconds();
const dateFormat = (!params.dateFormat) ? "/" : params.dateFormat;
const timeFormat = (!params.timeFormat) ? ":" : params.timeFormat;
return [year, month, day].map(formatNumber).join(dateFormat) + ' ' + [hour, minute, second].map(formatNumber).join(timeFormat);
} const formatNumber = n => {
n = n.toString();
return n[1] ? n : '0' + n;
} window.onload = () => {
document.getElementById("beforeFiveMinuteTime").innerHTML = formatTime({
date: new Date(),
ms: -5 * 60 * 1000,
dateFormat: "-"
}); document.getElementById("nowTime").innerHTML = formatTime({
date: new Date(),
timeFormat: "/"
});
document.getElementById("afterFiveMinuteTime").innerHTML = formatTime({
date: new Date(),
ms: 5 * 60 * 1000
});
}
</script> </body> </html>

结果:

JS获取时间(当前-过去-未来)的更多相关文章

  1. js获取时间相关函数

    js获取时间函数 var myDate = new Date; var year = myDate.getFullYear();//获取当前年 var yue = myDate.getMonth()+ ...

  2. js 获取时间 new Date()详细介绍

    javaScript系列:js中获取时间new Date()详细介绍 (2012-03-31 09:54:25) 转载▼ 标签: js时间 new date() 字符类型 转换 分类: study-j ...

  3. js 获取时间对象代码

    /** * 获取时间对象 */function getDateObj(addDayCount) { var dd = new Date(); dd.setDate(dd.getDate()+addDa ...

  4. js获取时间加多山天和时间戳转换成日期

    function huoqu(){    var data = $("#data").val();//获取的时间    var day = $('#day').val();//往后 ...

  5. js获取时间,循环执行任务,延迟执行任务

    一.获取时间 核心方法创建一个时间对象:new Date() 时间对象相关操作 时间对象.函数名 函数名 功能 getYear() 获取四位数的年份 getMonth() 获取2位数的月数, 这个是从 ...

  6. js获取时间及转化

    有关Javascript的本地时间获取,下面我直接用代码来进行举例吧 let time = new Date(); let month = time.getMonth()+1; //获取的月份0~11 ...

  7. js 获取时间比较全,留备用(zhuan)

    var myDate = new Date(); myDate.getYear();        //获取当前年份(2位) myDate.getFullYear();    //获取完整的年份(4位 ...

  8. 【巩固】JS获取时间的一些基础知识

    就是一个new Date()对象,要注意的有以下几点; 直接给oDate对象设置年月日时分秒的时候要分成两步,oDate.setFullYear()接受三个参数分别是年月日,注意月份是从0开始计一月的 ...

  9. js获取时间天数

    date2必须大于date1 function getDays(date1,date2){ /*获取之间的天数*/ /*date1,date2都是date格式*/ var getd=(date2.ge ...

随机推荐

  1. Python 字典(Dictionary) type()方法

    Python 字典(Dictionary) type()方法 描述 Python 字典(Dictionary) type() 函数返回输入的变量类型,如果变量是字典就返回字典类型.高佣联盟 www.c ...

  2. PHP strripos() 函数

    实例 查找 "php" 在字符串中最后一次出现的位置: <?php高佣联盟 www.cgewang.comecho strripos("I love php, I ...

  3. Hibernate Validator校验参数全攻略

    1. 前言 数据字段一般都要遵循业务要求和数据库设计,所以后端的参数校验是必须的,应用程序必须通过某种手段来确保输入进来的数据从语义上来讲是正确的. 2. 数据校验的痛点 为了保证数据语义的正确,我们 ...

  4. jmeter分布式踩得坑汇总

    一.普通的配置文件基本都能网上搜索资料,这里就简单记录: a.jmeter.properties几处修改:1.remote_hosts=master压力机Ip;2.server_port,开启服务器端 ...

  5. 【python接口自动化】- ConfigParser配置文件的使用

    前言:目前我们使用的绝大多数计算机程序,无论是办公软件,浏览器,甚至游戏.视频都是通过菜单界面系统配置的,它几乎成了我们使用机器的默认方式.而在python中,也有这样的一个配置模块可以把代码可配置化 ...

  6. 用python包xlwt将数据写入Excel中

    一般用两种格式的数据写入,不多说放上demo. 1.列表形式写入 import xlwt def data_write(file_path, datas): f = xlwt.Workbook() s ...

  7. Apache Hudi + AWS S3 + Athena实战

    Apache Hudi在阿里巴巴集团.EMIS Health,LinkNovate,Tathastu.AI,腾讯,Uber内使用,并且由Amazon AWS EMR和Google云平台支持,最近Ama ...

  8. Java分层领域模型的DO、DTO、BO、AO、VO、POJO、Query定义

    分层领域模型:    DO( Data Object):与数据库表结构一一对应,通过DAO层向上传输数据源对象.    DTO( Data Transfer Object):数据传输对象,Servic ...

  9. 代码优化之return 减少括号嵌套

    代码优化之return 减少括号嵌套   例如下面的公共方法 // 优化 substring方法   解决边界越界问题 空指针问题 优化前 public static String subString ...

  10. Vue 引入指定目录文件夹所有的组件 require.context

    require.context require.context是webpack中用来管理依赖的一个函数,此方法会生成一个上下文模块,包含目录下所有的模块的引用,同构正则表达式匹配,然后require进 ...