我试图将任何给定日期的第二天结束计算为到期日。
因此,如果输入是例如10/26/2013 16:36:46那么我想得到10/27/2013 23:59:59和7/31/2013 16:36:46给我8/1/2013 23:59:59
闰年显然很难,第二天是新的一个月。所以我试着使用dateParse函数,它给了我一个数字,我可以轻松地添加86400000(全天以毫秒为单位),然后我想基本上使用dateParse的反向(将数字转换成日期对象),这样我就可以了取出日期组件并用23:59:59
替换时间组件这里的代码不起作用 - setTime似乎不是正确的功能,并使我的next_day变量"未定义"
var next_day = call_start.dateParse + 86400000; // adding a full day to it
next_day = next_day.setTime;
var day = next_day.getDate;
day = (day < 10 ? "0" : "") + day;
var month = next_day.getMonth + 1;
month = (month < 10 ? "0" : "") + month;
var year = next_day.getFullYear;
var hour = 23;
var min = 59;
var sec = 59;
var expiry = year + ":" + month + ":" + day + ":" + hour + ":" + min + ":" + sec;
console.log ('Streak expires at: ' + expiry);
答案 0 :(得分:3)
您可以使用set*
功能修改日期:
var date = new Date('7/31/2013 16:36:46');
date.setDate(date.getDate() + 1);
date.setHours(23);
date.setMinutes(59);
date.setSeconds(59);
console.log(date);
// Thu Aug 01 2013 23:59:59 GMT+0200 (CEST)