繁体   English   中英

将yyyy-mm-dd hh:mm:ss格式转换为时间之前

[英]Convert yyyy-mm-dd hh:mm:ss format to time ago

我有这个日期和小时格式2016-03-07 15:13:49 我希望在1分钟前,1小时前或1年前显示它,具体取决于从现在开始的日期有多长。

如果你不关心准确性,我认为时刻是一种更好的方法。

例如:

var m = require('moment');
m("2016-03-07 15:13:49","YYYY-MM-DD HH:mm:ss").fromNow();  // 5 months ago
m("2016-07-28 12:13:49","YYYY-MM-DD HH:mm:ss").fromNow();  // 2 hours ago
m("2016-07-28 13:13:49","YYYY-MM-DD HH:mm:ss").fromNow();  // 36 minutes ago
m("2016-07-28 13:49:00","YYYY-MM-DD HH:mm:ss").fromNow();  // a minute ago
m("2016-07-28 13:50:00","YYYY-MM-DD HH:mm:ss").fromNow();  // a few seconds ago

您需要将日期格式转换为js date对象,然后您可以使用答案中的timeSince函数

 var date = new Date('2016-03-07T15:13:49') document.write("js date: " + date + "<br><br>"); document.write("timesince: "); document.write(timeSince(date)); function timeSince(date) { var seconds = Math.floor((new Date() - date) / 1000); var interval = Math.floor(seconds / 31536000); if (interval > 1) { return interval + " years"; } interval = Math.floor(seconds / 2592000); if (interval > 1) { return interval + " months"; } interval = Math.floor(seconds / 86400); if (interval > 1) { return interval + " days"; } interval = Math.floor(seconds / 3600); if (interval > 1) { return interval + " hours"; } interval = Math.floor(seconds / 60); if (interval > 1) { return interval + " minutes"; } return Math.floor(seconds) + " seconds"; } 

var past_date = new Date('2016-07-28T05:13:49');    // the date will come here 
var time_diff = new Date()- past_date;     // getting the difference between the past date and the current date
var min = Math.floor(time_diff/60000); // Converting time in to minutes
var seconds = 59,
    minutes = Math.floor(min%60),
    hours = Math.floor(min/60);

if(hours > 24){ // Checking if the hours ids more than 24 to display as a day
   var days = hours/24;   
   days = days.toFixed(0);
   document.write("last updated:" + days + " days ago");
}else if(hours > 1){ // if time is less than the 24 hours it will display in hours
    document.write("last updated:" + hours + " hours ago");
}else{
    document.write("last updated:" + minutes + " minutes ago");
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM