moment.duration字符串给出nan值

时间:2017-11-29 02:19:52

标签: javascript angularjs momentjs

我有一个关于 moment.duration 给我一个 NAN 值的问题。在文档中,它说可以给它一个字符串值moment.duration(String)。我在这里迷失了,无处可去。

vm.generatedData value

vm.generatedData = [{ overtime: 'Mon Nov 27 2017 01:00:00 GMT+0800 (+08)' }, { overtime: 'Wed Nov 29 2017 02:25:00 GMT+0800 (+08)' }];

控制器

function getTotalOvertime() {
  var total = 0;
  console.log(vm.generatedData);

  for (var x = 0; x < vm.generatedData.length; x++) {

    var format = moment(vm.generatedData[x].overtime).format('HH:mm:ss');
    vm.add += moment.duration(format);
    console.log(vm.add); // NAN VALUE
    var d = moment.duration(vm.add);
    vm.totalOT = parseInt(d.asHours()) + ':' + d.minutes();
  }

}

1 个答案:

答案 0 :(得分:1)

您的问题不是时刻,而是vm.add还没有值。将vm.add = 0total一起设置,您应该会再次看到它。

您可以通过记录moment.duration(format)来查看此信息,并查看它是否返回了一个数字。