87,914
社区成员
发帖
与我相关
我的任务
分享
function dateDiff(d1,d2,str){
d1 = new Date(d1.replace(/-/g,'/'));
d2 = new Date(d2.replace(/-/g,'/'));
var obj={},M1=d1.getMonth(),D1=d1.getDate(),M2=d2.getMonth(),D2=d2.getDate();
obj.Y=d2.getFullYear() - d1.getFullYear() + (M1*100+D1 > M2*100+D2 ? -1 : 0);
obj.M=obj.Y * 12 + M2 - M1 + (D1 > D2 ? -1 : 0);
obj.s=Math.floor((d2-d1)/1000);//差几秒
obj.m=Math.floor(obj.s/60);//差几分钟
obj.h=Math.floor(obj.m/60);//差几小时
obj.D=Math.floor(obj.h/24);//差几天
return str.replace(/\w/g,function(a){
return obj[a] ? obj[a]:a;
});
}
dateDiff("2016-9-30","2016-10-1","相差Y年M月D天");