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

JavaScript09

js怎么输出当前日期和指定日期的相隔天数?谢谢,第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())

//两个日期的差值(d1 - d2).

function DateDiff(d1,d2){

var day = 24 * 60 * 60 *1000

try{

var dateArr = d1.split("-")

var checkDate = new Date()

checkDate.setFullYear(dateArr[0], dateArr[1]-1, dateArr[2])

var checkTime = checkDate.getTime()

var dateArr2 = d2.split("-")

var checkDate2 = new Date()

checkDate2.setFullYear(dateArr2[0], dateArr2[1]-1, dateArr2[2])

var checkTime2 = checkDate2.getTime()

var cha = (checkTime - checkTime2)/day

return cha

}catch(e){

return false

}

}