js怎么输出当前日期和指定日期的相隔天数?谢谢

2025-01-31 06:17:15
推荐回答(5个)
回答1:

// 获取当前时间时间戳
var currentTime = Date.now();

// 获取指定时间时间戳
// 注1:这里写的是2012年9月1日0时0分0秒
// 注2:Javascript中月份是实际数字减1
var targetTime = (new Date(2012, 8, 1, 0, 0, 0)).getTime();

// 获取差值,如果指定日期早于现在,则为负数
var offsetTime = targetTime - currentTime;

// 求绝对值,获取相差的时间
offsetTime = Math.abs(offsetTime);

// 将时间转位天数
// 注:Javascript中时间戳的单位是毫秒
var offsetDays = Math.floor(offsetTime / (3600 * 24 * 1e3));

可以写成通用的方法:

function getOffsetDays(time1, time2) {
    var offsetTime = Math.abs(time1 - time2);
    return Math.floor(offsetTime / (3600 * 24 * 1e3));
}

// 获取相隔天数
getOffsetDays(Date.now(), (new Date(2012, 8, 1)).getTime());

回答2:

var date1=new Date(); //开始时间
var date2=new Date(); //结束时间
var date3=date2.getTime()-date1.getTime() //时间差的毫秒数

------------------------------

//计算出相差天数
var days=Math.floor(date3/(24*3600*1000))

回答3:

function dateDiff(sDate2) {
var sDate1=new Date().pattern("yyyy-MM-dd");
sDate2=LEx.util.Format.formatDate(sDate2,"yyyy-MM-dd");
var aDate, oDate1, oDate2, iDays;
aDate = sDate1.split("-");
oDate1 = new Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0]); //转换为yyyy-MM-dd格式
aDate = sDate2.split("-");
oDate2 = new Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0]);
iDays = parseInt((oDate1 - oDate2) / 1000 / 60 / 60 / 24); //把相差的毫秒数转换为天数
return iDays; //返回相差天数
来源(http://blog.csdn.net/chenleixing/article/details/44657729)

回答4:

function days(_date){
var date1=new Date().getTime(),date2=new Date(_date).getTime();
return Math.floor((date1-date2)/(24*3600*1000));
}

alert(days("2016-02-10"));

回答5:

剑圣是大lol的 怎么可能会算数