js 时间差日期数计算
//js 日期时间差计算
//时间差计算
/*
* startDate==>开始时间
* endDate==>结束时间
* 事例:diffTime(data.createTime,new Date())
*
* */
function diffTime(startDate,endDate) {
var diff=endDate.getTime() - startDate;//.getTime();//时间差的毫秒数
//计算出相差天数
var days=Math.floor(diff/(24*3600*1000));
//计算出小时数
var leave1=diff%(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);
var returnStr = seconds + "秒前";
if(minutes>0) {
returnStr = minutes + "分钟前";//+ returnStr;
}
if(hours>0) {
returnStr = hours + "小时前";// + returnStr;
}
if(days>0) {
returnStr = days + "天前" ;//+ returnStr;
}
return returnStr;
}js 计算俩个日期之间的天数
getDays(date1,date2) {
let date1Str = date1.split("-"); //将日期字符串分隔为数组,数组元素分别为年.月.日
//根据年 . 月 . 日的值创建Date对象
let date1Obj = new Date(date1Str[0], (date1Str[1] - 1), date1Str[2]);
let date2Str = date2.split("-");
let date2Obj = new Date(date2Str[0], (date2Str[1] - 1), date2Str[2]);
let t1 = date1Obj.getTime();
let t2 = date2Obj.getTime();
let dateTime = 1000 * 60 * 60 * 24; //每一天的毫秒数
let minusDays = Math.floor(((t2 - t1) / dateTime)); //计算出两个日期的天数差
let days = Math.abs(minusDays); //取绝对值
return days;
},js 两个时间差
getTime(Time,endTime) {// 计算两时间差,得到总分钟 格式 24:60
let arr1 = Time.split(':'); //分割文本
let arr2 = endTime.split(':'); //分割文本
let H1 = arr1[0],U1 = arr1[1];
let H2 = arr2[0],U2 = arr2[1];
let Hx,Ux;
if(H1>H2){
Hx = 24- parseInt(H1) + parseInt(H2);
}else{
Hx = parseInt(H2) - parseInt(H1);
}
if(U1<=U2){
Ux = parseInt(U2) - parseInt(U1);
}else{
Ux = 60- parseInt(U1) + parseInt(U2);
}
if(Ux < 10){
Ux = '0'+Ux;
}
return Hx + "." + Ux;
},js 日期加上天数得到新的日期
/** 日期加上天数得到新的日期 */
//dateTemp 需要参加计算的日期,days要添加的天数,返回新的日期,日期格式:YYYY-MM-DD
getNewDay(dateTemp, days) {
var dateTemp = dateTemp.split("-");
//转换为MM-DD-YYYY格式
var nDate = new Date(dateTemp[1] + '-' + dateTemp[2] + '-' + dateTemp[0]);
var millSeconds = Math.abs(nDate) + (days * 24 * 60 * 60 * 1000);
var rDate = new Date(millSeconds);
var year = rDate.getFullYear();
var month = rDate.getMonth() + 1;
if (month < 10) month = "0" + month;
var date = rDate.getDate();
if (date < 10) date = "0" + date;
return (year + "-" + month + "-" + date);
}
日期计算天差(微信小程序 个性时间)
formatTime: function (unixDate, unixNew) { //日期计算天差(个性时间) unixDate原时间戳 unixNew当前时间戳
var diff = unixNew - unixDate; //时间差的毫秒数
//计算出相差天数
var days = Math.floor(diff / (24 * 3600 * 1000));
//计算出小时数
var leave1 = diff % (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);
var returnStr = seconds + "秒前";
if (minutes > 0) {
returnStr = minutes + "分钟前"; //+ returnStr;
}
if (hours > 0) {
returnStr = hours + "小时前"; // + returnStr;
}
if (days > 0) {
returnStr = days + "天前"; //+ returnStr;
}
return returnStr;
}