使用javascript计算两个时间戳之间的差异
Calculate difference between 2 timestamps using javascript
我必须计算两个时间戳之间的差异。你也可以帮助我转换成时间戳字符串。仅使用纯javascript。没有JQUERY .
下面是我的函数:function clearInactiveSessions()
{
alert("ok");
<c:if test="${not empty pageScope.sessionView.sessionInfo}">
var currentTime = new Date().getTime();
alert("curr:"+currentTime);
var difference=new Date();
<c:forEach items="${pageScope.sessionView.sessionInfo}" var="inactiveSession">
var lastAccessTime = ${inactiveSession.lastUpdate};
difference.setTime(Maths.abs(currentTime.getTime()-lastAccessTime.getTime()));
var timediff=diff.getTime();
alert("timediff:"+timediff);
var mins=Maths.floor(timediff/(1000*60*60*24*60));
alert("mins:"+mins);
if(mins<45)
clearSession(${item.sessionID});
</c:forEach>
</c:if>
}
我张贴我自己的例子,尝试在你的代码中实现这个
function timeDifference(date1,date2) {
var difference = date1.getTime() - date2.getTime();
var daysDifference = Math.floor(difference/1000/60/60/24);
difference -= daysDifference*1000*60*60*24
var hoursDifference = Math.floor(difference/1000/60/60);
difference -= hoursDifference*1000*60*60
var minutesDifference = Math.floor(difference/1000/60);
difference -= minutesDifference*1000*60
var secondsDifference = Math.floor(difference/1000);
console.log('difference = ' +
daysDifference + ' day/s ' +
hoursDifference + ' hour/s ' +
minutesDifference + ' minute/s ' +
secondsDifference + ' second/s ');
}
根据批准的答案:
function(timestamp1, timestamp2) {
var difference = timestamp1 - timestamp2;
var daysDifference = Math.floor(difference/1000/60/60/24);
return daysDifference;
}
一个更好的选择是使用window。性能API。
const startTime = window.performance.now()
setTimeout(()=>{
const endTime = window.performance.now()
console.log("Time Elapsed : ",endTime-startTime) // logs ~2000 milliseconds
}, 2000)
从窗口开始更新node.js。性能在nodejs中不可用。
const {performance} = require('perf_hooks');
const startTime = performance.now();
setTimeout(()=>{
const endTime = performance.now();
console.log("Time Elapsed : ",endTime-startTime) // logs ~2000 milliseconds
}, 2000)
如果您的字符串是Mon May 27 11:46:15 IST 2013,您可以通过解析位(假设三个字母的英文名称为月份,根据需要进行调整)将其转换为日期对象:
// Convert string like Mon May 27 11:46:15 IST 2013 to date object
function stringToDate(s) {
s = s.split(/['s:]+/);
var months = {'jan':0, 'feb':1, 'mar':2, 'apr':3, 'may':4, 'jun':5,
'jul':6, 'aug':7, 'sep':8, 'oct':9, 'nov':10, 'dec':11};
return new Date(s[7], months[s[1].toLowerCase()], s[2], s[3], s[4], s[5]);
}
alert(stringToDate('Mon May 27 11:46:15 IST 2013'));
注意,如果在同一时区中使用日期字符串,则可以忽略时区,以便进行差异计算。如果它们在不同的时区(包括夏令时的差异),那么您必须考虑这些差异。
获取时差的简单方法。
var initialTime = new Date();
var finalTime = new Date();
console.log({
days: finalTime.getDay() - initialTime.getDay(),
hours: finalTime.getHours() - initialTime.getHours(),
minutes: finalTime.getMinutes() - initialTime.getMinutes(),
seconds: finalTime.getSeconds() - initialTime.getSeconds(),
milliseconds: finalTime.getMilliseconds() - initialTime.getMilliseconds(),
});
相关文章:
- 如何每10.6秒从时间戳增加+1
- 使用AngularJS从时间戳中获取工作日
- 将时间戳转换为java中的ISO860,
- Javascript Unix时间戳转换
- JavaScript JSON关联对象键和值都作为日期时间戳
- 时间戳与mongoskin如何
- 用时间戳获取两个不同日期之间的时间差
- JavaScript:获取MySQL时间戳和当前日期之间的天数差
- 用户如何获取两个时间戳之间的对象
- 在带有时间戳的日期之间计算时出现 NaN JavaScript 错误
- 计算两个 yyyyMMddHHmmss 时间戳之间的经过时间
- JS和SQL Server之间的UTC时间戳不同
- 如何找到两个UNIX时间戳之间的HH:MM:SS差异
- 如何在客户端(js)和服务器(php)上获得时间戳之间的差异
- Javascript中时间戳之间的差异
- 使用javascript计算两个时间戳之间的差异
- 如何在moment.js中显示unix时间戳和当前日期之间的时间差
- Javascript和PHP之间的时间戳
- PHP和js的时间戳之间的差异
- 如何在 JavaScript 中呈现两个时间戳之间的上下文差异