使用moment.js计算经过的时间?

时间:2014-08-19 23:11:04

标签: javascript jquery momentjs

  var currentTimeArray = [];
  function currentTime(){
    var time = moment();
    return currentTimeArray.push(time);
  }

  $('.next-fieldgroup').on('click', function(e){
    e.preventDefault();
    currentTime();

    var endTime = $(currentTimeArray).last();
    var startTime = currentTimeArray[0];
    var duration = moment.duration(endTime.diff(startTime));
    var elapsedTime = duration().asMinutes();

    $('#timer-counter').text( elapsedTime );
  });

应该做什么......

  1. 点击存储现在时间到ARRAY
  2. 点击比较arr [0]与arr.last()获取时间经过时间
  3. 以经过时间(分钟)更新div
  4. 我希望输出符合:

    "时间过去了:12分钟"

    我收到以下错误:

      

    未捕获的TypeError:undefined不是函数

1 个答案:

答案 0 :(得分:1)

jQuery方法返回jQuery包装的对象,因此你的endTime是一个jQuery包装的时刻对象。并且jQuery没有.diff方法因此错误。使用.get(0)[0]获取实际时刻对象

var endTime = $(currentTimeArray).last().get(0);