| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143 |
- const formatTime = date => {
- 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()
- return [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':')
- }
- const formatNumber = n => {
- n = n.toString()
- return n[1] ? n : '0' + n
- }
- const formatDate = date => {
- 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()
- return [year, month, day].map(formatNumber).join('/')
- }
- //计算相差天数
- const datedifference = (sDate1, sDate2) => { //sDate1和sDate2是2006-12-18格式
- var dateSpan,
- tempDate,
- iDays;
- sDate1 = Date.parse(sDate1.replace(/-/g, '/'));
- sDate2 = Date.parse(sDate2.replace(/-/g, '/'));
- dateSpan = sDate2 - sDate1;
- dateSpan = Math.abs(dateSpan);
- iDays = Math.floor(dateSpan / (24 * 3600 * 1000));
- return iDays
- };
- const getDays = (date1, date2) => {
- const dateTime = 1000 * 60 * 60 * 24; //每一天的毫秒数
- const minusDays = Math.floor(((date2.getTime() - date1.getTime()) / dateTime));//计算出两个日期的天数差
- return Math.abs(minusDays);
- }
- /**
- * [dateAddDays 从某个日期增加n天后的日期]
- * @param {[string]} dateStr [日期字符串]
- * @param {[int]} dayCount [增加的天数]
- * @return {[string]}[增加n天后的日期字符串]
- */
- const dateAddDays = (dateStr, dayCount) => {
- var tempDate = new Date(dateStr.replace(/-/g, "/"));//把日期字符串转换成日期格式
- var resultDate = new Date((tempDate / 1000 + (86400 * dayCount)) * 1000);//增加n天后的日期
- var resultDateStr = resultDate.getFullYear() + "-" + (resultDate.getMonth() + 1) + "-" + (resultDate.getDate());//将日期转化为字符串格式
- return resultDateStr;
- }
- /**
- * 根据newDate 来获取加的日期
- */
- const addDaysFromNewDate = (tempDate, dayCount) => {
- var resultDate = new Date((tempDate / 1000 + (86400 * dayCount)) * 1000);//增加n天后的日期
- // var resultDateStr=resultDate.getFullYear()+"/"+(resultDate.getMonth()+1)+"/"+(resultDate.getDate());//将日期转化为字符串格式
- // return resultDateStr;
- const year = resultDate.getFullYear();
- const month = resultDate.getMonth() + 1;
- const day = resultDate.getDate();
- return [year, month, day].map(formatNumber).join('/')
- }
- const getWeightDate = date => {
- var timearr = date.replace(" ", ":").replace(/\:/g, "-").split("-");
- var timestr = "" + timearr[1] + "/" + timearr[2]
- return timestr
- }
- const dateAddDate = (dateStr, dayCount) => {
- var tempDate = new Date(dateStr.replace(/-/g, "/"));//把日期字符串转换成日期格式
- var resultDate = new Date((tempDate / 1000 + (86400 * dayCount)) * 1000);//增加n天后的日期
- const year = resultDate.getFullYear()
- const month = resultDate.getMonth() + 1
- const day = resultDate.getDate()
- const hour = resultDate.getHours()
- const minute = resultDate.getMinutes()
- const second = resultDate.getSeconds()
- //将日期转化为字符串格式
- return [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':');
- }
- const addDayTranMillisecond = (dateStr, dayCount) => {
- var tempDate = new Date(dateStr.replace(/-/g, "/"));//把日期字符串转换成日期格式
- var resultDate = new Date((tempDate / 1000 + (86400 * dayCount)) * 1000);//增加n天后的日期
- //将日期转化为字符串格式
- return resultDate.getTime();
- }
- //计算剩余时间
- const remainDayAndHour = (sDate1, currentDate) => { //sDate1和sDate2是2006-12-18格式
- var dateSpan,
- tempDate,
- iDays;
- sDate1 = Date.parse(sDate1.replace(/-/g, '/'));
- currentDate = Date.parse(currentDate.replace(/-/g, '/'));
- dateSpan = currentDate - sDate1;
- // console.log(dateSpan);
- if (dateSpan < 0) {
- dateSpan = Math.abs(dateSpan);
- iDays = Math.floor(dateSpan / (24 * 3600 * 1000));
- // 计算小时数
- var hours = Math.floor(dateSpan / (60 * 60 * 1000));
- // console.log(iDays,hours);
- return [iDays, hours];
- } else {
- return [0, 0];
- }
- };
- export default {
- formatTime,
- formatDate,
- datedifference,
- getDays,
- dateAddDays,
- addDaysFromNewDate,
- getWeightDate,
- dateAddDate,
- remainDayAndHour,
- addDayTranMillisecond
- }
|