|
|
@@ -37,10 +37,10 @@ const datedifference = (sDate1, sDate2) => { //sDate1和sDate2是2006-12-18格
|
|
|
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);
|
|
|
+const getDays = (date1, date2) => {
|
|
|
+ const dateTime = 1000 * 60 * 60 * 24; //每一天的毫秒数
|
|
|
+ const minusDays = Math.floor(((date2.getTime() - date1.getTime()) / dateTime));//计算出两个日期的天数差
|
|
|
+ return Math.abs(minusDays);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -49,76 +49,82 @@ const getDays =(date1, date2)=> {
|
|
|
* @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;
|
|
|
+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());//将日期转化为字符串格式
|
|
|
+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
|
|
|
+ return timestr
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-const dateAddDate=(dateStr,dayCount) => {
|
|
|
- var tempDate=new Date(dateStr.replace(/-/g,"/"));//把日期字符串转换成日期格式
|
|
|
- var resultDate=new Date((tempDate/1000+(86400*dayCount))*1000);//增加n天后的日期
|
|
|
+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 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(':');
|
|
|
+ //将日期转化为字符串格式
|
|
|
+ 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 addDayTranMillisecond = (dateStr, dayCount) => {
|
|
|
+ var tempDate = new Date(dateStr.replace(/-/g, "/"));//把日期字符串转换成日期格式
|
|
|
+ var resultDate = new Date((tempDate / 1000 + (86400 * dayCount)) * 1000);//增加n天后的日期
|
|
|
+ //将日期转化为字符串格式
|
|
|
+ return resultDate.getTime();
|
|
|
}
|
|
|
|
|
|
-
|
|
|
-const dayAndHour = (sDate1, sDate2) => { //sDate1和sDate2是2006-12-18格式
|
|
|
+//计算剩余时间
|
|
|
+const remainDayAndHour = (sDate1, currentDate) => { //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));
|
|
|
-
|
|
|
- // 计算小时数
|
|
|
- var hours = Math.floor(dateSpan / (60 * 60 * 1000));
|
|
|
- return [iDays,hours];
|
|
|
+ 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 {
|
|
|
@@ -129,9 +135,9 @@ export default {
|
|
|
dateAddDays,
|
|
|
addDaysFromNewDate,
|
|
|
getWeightDate,
|
|
|
-
|
|
|
+
|
|
|
dateAddDate,
|
|
|
- dayAndHour,
|
|
|
+ remainDayAndHour,
|
|
|
|
|
|
addDayTranMillisecond
|
|
|
}
|