在javascript中计算同一天的现在和未来时间之间的时差
Posted
技术标签:
【中文标题】在javascript中计算同一天的现在和未来时间之间的时差【英文标题】:Calculating time diffrence between now and future time of same day in javascript 【发布时间】:2014-07-30 15:52:52 【问题描述】:我是 java 脚本的新手,我需要有关如何获取现在和今天晚上 9 点之间的时差的帮助(假设现在的时间不到晚上 9 点)。如果可能的话,我特别希望秒部分能够动态改变/减少。 H:请用 M S 格式。非常感谢您的帮助
【问题讨论】:
你自己有没有努力解决这个问题? How do I get the difference between two Dates in javascript?的可能重复 【参考方案1】:使用这个:* Updated - With Days Hours Minutes and Seconds *
showDiff();
function showDiff()
var date1 = new Date();
var date2 = new Date("2015/07/30 21:59:00");
//Customise date2 for your required future time
var diff = (date2 - date1)/1000;
var diff = Math.abs(Math.floor(diff));
var days = Math.floor(diff/(24*60*60));
var leftSec = diff - days * 24*60*60;
var hrs = Math.floor(leftSec/(60*60));
var leftSec = leftSec - hrs * 60*60;
var min = Math.floor(leftSec/(60));
var leftSec = leftSec - min * 60;
document.getElementById("showTime").innerhtml = "You have " + days + " days " + hrs + " hours " + min + " minutes and " + leftSec + " seconds before death.";
setTimeout(showDiff,1000);
为您的 HTML 代码:
<div id="showTime"></div>
【讨论】:
感谢您的回复。我是否可以将 date2 变量设置为今天晚上 9 点,而无需手动输入代码 2015/07/30?【参考方案2】:这是一些未经测试的代码,应该会在晚上 9:00 之前为您提供几小时和几分钟
var hoursToday = 21; // the 9 in 9:00 PM
var minutesToday = 0; // the 00 in 9:00 PM
var d = new Date();
var hoursNow = d.getHours();
var minutesNow = d.getMinutes();
var hoursLeft = hoursToday - hoursNow;
var minutesLeft = minutesToday - minutesNow;
【讨论】:
以上是关于在javascript中计算同一天的现在和未来时间之间的时差的主要内容,如果未能解决你的问题,请参考以下文章