如何在字符串中获取字符串的日期数到现在为止.js?

时间:2017-01-09 14:34:23

标签: javascript momentjs

我似乎遇到了比必要更多的麻烦。

我过去的日期是字符串,例如:2017-01-09T10:23:13.000Z

我希望得到now之前的小时数。

我应该执行哪些操作?

3 个答案:

答案 0 :(得分:0)

使用moment.duration和duration.asHours。

您现在可以使用moment()获取当前日期时间,并从字符串的日期时间开始获取现在的持续时间。

var now = moment();
var duration = moment.duration(now.diff("2017-01-09T10:23:13.000Z"));
var hours = duration.asHours();
console.log(hours)
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/moment.min.js"></script>

答案 1 :(得分:0)

您可以使用diff指定'hour'作为第二个参数。

这是一个工作示例:

&#13;
&#13;
var time = '2017-01-09T10:23:13.000Z';
console.log(moment().diff(moment(time), 'h'));
&#13;
<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.17.1/moment.min.js"></script>
&#13;
&#13;
&#13;

答案 2 :(得分:0)

您应该使用moment.durationduration.asHours方法。

var startTime=new moment(`2017-01-09T10:23:13.000Z`);
var end=moment();
var duration = moment.duration(end.diff(startTime));
var hours = duration.asHours();
console.log(parseInt(hours));

&#13;
&#13;
  var startTime=new moment(`2017-01-09T10:23:13.000Z`);
var end=moment();
var duration = moment.duration(end.diff(startTime));
var hours = duration.asHours();
console.log(parseInt(hours));
&#13;
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.5.1/moment.min.js"></script>
&#13;
&#13;
&#13;