时间戳,年月日,小时操作工具

var addsub = {
	/*
	时间段计算,两个时间或者两个时间戳
	传入时间戳或者时间段(2022-05-01 00:00:00或者2022/05/01 00:00:00)) 
	starttime 开始时间,overtime 结束时间,格式为2022-05-01 00:00:00或者2022/05/01 00:00:00
	new Date().getTime() 返回毫秒数
	interval true 相差多少时间   false超出多少时间
	*/
	AddSubTime(starttime, overtime) {
		if (this.isNumber(starttime)) {
			return this.TemlefTimea(starttime, overtime, false)
		} else {
			return this.TemlefTimea(starttime, overtime, true)
		}
	},
	//sttype 为true 为都是时间(2022-05-01 00:00:00)------------为false 都是毫秒(既时间戳)
	TemlefTimea(st, ov, timetype) {
		let arr={}
		// var date1 = '2022-05-01 00:00:00'; //开始时间
		var date1 = timetype ? new Date(st).getTime() : st
		//var date2 = new Date();    //结束时间  
		// var date2 = '2022-05-01 00:01:00';
		var date2 = timetype ? new Date(ov).getTime() : ov
		//var date3 = date2.getTime() - new Date(date1).getTime();   //时间差的毫秒数   
		var date3 = date2 - date1;
		//------------------------------
		//计算出相差天数  
		var days = Math.floor(date3 / (24 * 3600 * 1000))
		//计算出小时数
		var leave1 = date3 % (24 * 3600 * 1000) //计算天数后剩余的毫秒数  
		var hours = Math.floor(leave1 / (3600 * 1000))
		//计算相差分钟数  
		var leave2 = leave1 % (3600 * 1000) //计算小时数后剩余的毫秒数  
		var minutes = Math.floor(leave2 / (60 * 1000))
		//计算相差秒数  
		var leave3 = leave2 % (60 * 1000) //计算分钟数后剩余的毫秒数  
		var seconds = Math.round(leave3 / 1000)		
		//0=>  starttime<overtime  1=>  starttime>overtime
		arr.status=days<0||hours<0||minutes<0||seconds<0?0:1
		arr.days=Math.abs(days) 
		arr.hours=Math.abs(hours)
		arr.minutes=Math.abs(minutes)
		arr.seconds=Math.abs(seconds)
		return arr
		// return (" 相差 " + days + "天 " + hours + "小时 " + minutes + " 分钟" + seconds + " 秒")
	},
	/*
	时间和整数小时加减
	时间2022-05-01 00:00:00 或者2018/01/01 12:00:00和   n小时
		time  :2022-05-01 00:00:00
		inthour  :int 小时
		type: true 相加  false 相减
	*/
	JsTime(time, inthour, type) {
		var _d = new Date(time);
		if (type) {
			_d = new Date(_d.valueOf() + inthour * (60 * 60 * 1000)); // 当前时间加
		} else {
			_d = new Date(_d.valueOf() - inthour * (60 * 60 * 1000)); // 当前时间减
		}

		//       _d = new Date(_d.valueOf() - 60* 60 * 1000);// 当前时间减掉1小时
		//       _d = new Date(_d.valueOf() + 60 * 1000);// 当前时间加上1分钟

		//       _d = new Date(_d.valueOf() - 60 * 1000);// 当前时间减掉1分钟
		return this.formatDate(_d.getTime());
	},
	/*
	时间和整数分钟加减
	时间2022-05-01 00:00:00 或者2018/01/01 12:00:00和   n分钟
		time  :2022-05-01 00:00:00
		inthour  :int 分钟
		type: true 相加  false 相减
	*/
	TimeMiute(time, inthour, type) {
		var _d = new Date(time);
		if (type) {
			_d = new Date(_d.valueOf() + inthour * (60 * 1000)); // 当前时间加上1分钟
		} else {
			_d = new Date(_d.valueOf() - inthour * (60 * 1000)); // 当前时间减去1分钟
		}
		var _d_year111 = _d.getFullYear(); //年
		var _d_month111 = _d.getMonth() + 1; //月        
		_d_month111 = (_d_month111 < 10 ? "0" + _d_month111 : _d_month111);
		var _d_day111 = _d.getDate(); //日
		_d_day111 = (_d_day111 < 10 ? "0" + _d_day111 : _d_day111);
		var _d_hours111 = _d.getHours();
		var _d_minutes111 = _d.getMinutes();
		var _d_seconds111 = _d.getSeconds();
		if (_d_hours111 < 10) _d_hours111 = "0" + _d_hours111;
		if (_d_minutes111 < 10) _d_minutes111 = "0" + _d_minutes111;
		if (_d_seconds111 < 10) _d_seconds111 = "0" + _d_seconds111;

		var _data = _d_year111 + "-" + _d_month111.toString() + "-" + _d_day111 + " " + _d_hours111 + ":" +
			_d_minutes111 + ":" + _d_seconds111;
		return _data;
	},

	//时间戳转换为时间  时间戳->2022-05-01 00:00:00
	//时间戳转换方法    date:时间戳数字
	formatDate(date) {
		var date = new Date(date);
		var YY = date.getFullYear() + '-';
		var MM = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-';
		var DD = (date.getDate() < 10 ? '0' + (date.getDate()) : date.getDate());
		var hh = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':';
		var mm = (date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes()) + ':';
		var ss = (date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds());
		return YY + MM + DD + " " + hh + mm + ss;
	},

	//判断是否是整数
	isNumber(number) {
		return (number | 0) === number
	}
}
export default addsub

在main.js中导入

import astime from ‘@/common/request/AddSubTime.js’

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值