我已经实现了一个具有给定开始日期的计时器计数器。一切都很正常,直到我希望它显示月/日/分/秒。我看到我的代码中缺少逻辑的地方,所以我的问题是:是否有一种优雅的方式来处理(总秒数的划分),或者我应该使用嵌套的无穷无尽的if语句?
var deadline = "December 18 2016 08:00:00 GMT+0300";
function getTimeRemaining(endTime) {
var t = Date.parse(endTime) - Date.parse(new Date());
var seconds = Math.floor( (t/1000) % 60);
var minutes = Math.floor( (t/1000/60) % 60);
var hours = Math.floor( (t/(1000*60*60)) % 24);
var days = Math.floor( t/(1000*60*60*24) % 30 );
var months = Math.floor( t/(1000*60*60*24*30) );
return {
'total': t,
'months': months,
'days': days,
'hours': hours,
'minutes': minutes,
'seconds': seconds
};
}