从现在开始输出时间

时间:2017-07-16 06:16:04

标签: javascript validation datetime timezone momentjs

我正在使用时刻和时刻来尝试输出未来时间离现在的任何时间(在任何时区)。

例如,如果输入时间为1天且距离现在 h 小时,输出将类似于:

Tomorrow at hh:hh AM

以下是我使用一些示例数据创建我的时刻时区的方法:

  determineAirTime(dateTime) {
    console.log(dateTime); // May 12th 2014 8PM

    dateTime = 
 momentTimezone.tz(dateTime, "MMM Do YYYY hA", momentTimezone.tz.guess());

    console.log(dateTime) // 2014-05-12T20:00:00-04:00
  }

我的问题正在将上述时间(2014-05-12T20:00:00-04:00)转换为更易阅读的格式。例如tomorrow at 8:00pm,其中考虑了时区。

我已经尝试了fromNow()calendar(),但他们只输出了它将会有多少天。

如何将我的moment-timezone字符串转换为当前时间的确切日期/日/秒?

1 个答案:

答案 0 :(得分:0)

你应该小心“友好”的格式,很多用户觉得它们很烦人。无论如何,您可以使用calendar方法:

// Create a date for 13:15:23 tomorrow
var d = new Date();
d.setDate(d.getDate()+1);
d.setHours(13,15,23);
// Show friendly format
console.log(moment(d).calendar());
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>