我需要你的帮助,
由于某些奇怪的原因,当从当前日期减去Date2时,下面的函数返回错误的日期值差异为-1。
使用的日期格式为:dd / MM / yyyy h:mm tt
正确使用示例:
Date2 (15/05/2016 12:00 AM) - Date1 (16/05/2016 12:00 AM) = -1
Date2 (16/05/2016 12:00 AM) - Date1 (16/05/2016 12:00 AM) = 0
Date2 (17/05/2016 12:00 AM) - Date1 (16/05/2016 12:00 AM) = +1
function test() {
var date1 = new Date()
var date2 = new Date("16/05/2016 1:37 PM")
var diff = (date2.getTime() - date1.getTime()) / (1000*60*60*24)
diff = Math.round(diff)
alert(diff)
}
答案 0 :(得分:0)
日期收到以下参数:
Date(year, month, day, hours, minutes, seconds, milliseconds);
所以只需替换这一行:
var date2 = new Date("16/05/2016 1:37 PM")
这一行:
var date2 = new Date(2016, 4, 16, 13, 37);
你也可以像你一样给它一个字符串日期,但是你需要把年份放在第一年,然后是月份,然后是当天:
var date2 = new Date("2016/05/16 1:37 PM");