将时间转换为字符串就像“仅仅一分钟前”在Firefox

时间:2018-06-02 13:24:50

标签: javascript

伙计我试图将Facebook api创建的时间转换为简单的字符串前。此功能在Google Chrome中运行良好,但在Firefox中运行良好。 Firefox总是返回undefined。请帮帮我。

var time = "2018-06-01T10:18:49+0000";
var Created_time = timeAgo(time);
console.log(Created_time);

function timeAgo(time) {
  var date = new Date((time || "").replace(/-/g, "/").replace(/[TZ]/g, " ")),
    diff = (((new Date()).getTime() - date.getTime()) / 1000),
    day_diff = Math.floor(diff / 86400);

  if (isNaN(day_diff) || day_diff < 0 || day_diff >= 31)
    return;

  return day_diff == 0 && (
      diff < 60 && "just now" ||
      diff < 120 && "1 minute ago" ||
      diff < 3600 && Math.floor(diff / 60) + " minutes ago" ||
      diff < 7200 && "1 hour ago" ||
      diff < 86400 && Math.floor(diff / 3600) + " hours ago") ||
    day_diff == 1 && "Yesterday" ||
    day_diff < 7 && day_diff + " days ago" ||
    day_diff < 31 && Math.ceil(day_diff / 7) + " weeks ago";
}

实际输出应为“只是一分钟前”或“昨天”或“7天前”。

0 个答案:

没有答案