【发布时间】:2020-07-09 10:31:48
【问题描述】:
我得到 endtimestamp 作为 api 响应,我想从当前时间戳计算天数。我已经为此转换编写了一个函数,但给了我磨损的结果。
function timeDifference(current, previous) {
var msPerMinute = 60 * 1000;
var msPerHour = msPerMinute * 60;
var msPerDay = msPerHour * 24;
var msPerMonth = msPerDay * 30;
var msPerYear = msPerDay * 365;
var elapsed = current - previous;
if (elapsed < msPerMinute) {
return Math.round(elapsed/1000) + ' seconds ago';
}
else if (elapsed < msPerHour) {
return Math.round(elapsed/msPerMinute) + ' minutes ago';
}
else if (elapsed < msPerDay ) {
return Math.round(elapsed/msPerHour ) + ' hours ago';
}
else if (elapsed < msPerMonth) {
return '' + Math.round(elapsed/msPerDay) + ' days ago';
}
else if (elapsed < msPerYear) {
return '' + Math.round(elapsed/msPerMonth) + ' months ago';
}
else {
return '' + Math.round(elapsed/msPerYear ) + ' years ago';
}
}
请建议我正确的解决方案,以便我可以得到正确的转换
【问题讨论】:
-
考虑附加示例输入和您期望的相应输出。
标签: javascript timestamp