片刻JS - 增加两天

时间:2017-01-11 17:47:32

标签: javascript angularjs momentjs

以下是我当前的MomentJS代码:

var date = moment($scope.dt);

for (var i = 0; i < parseInt($scope.numPagos); i++) {
    $scope.resultados.push({
        'numerodecuota' : i + 1,
        'fechas' : date.add(1, 'days').format("MM/DD/YYYY"),
        'pagos' : Math.round($scope.importeprestamo / $scope.numPagos + interes),
        'interes' : Math.round(interes),
        'capital' : $scope.importeprestamo / $scope.numPagos,
        'fechaunix' : date.add(1, 'days').unix()
    }); 

}// End for loop

这就是结果:

Result

必须是:

  • 2017年1月12日
  • 2017年1月13日
  • 2017年1月14日
  • 2017年1月15日

等等。

3 个答案:

答案 0 :(得分:3)

  

注意:应该注意的是,时刻是可变的。调用任何操作方法都会改变原始时刻。

http://momentjs.com/docs/

看起来您正在添加1天,然后为fechaunix日期添加另一天。尝试将fechaunix设置为date一旦添加到<{p}}:

$scope.resultados.push({
     'numerodecuota' : i + 1,
     'fechas' : date.add(1, 'days').format("MM/DD/YYYY"),
     'pagos' : Math.round($scope.importeprestamo / $scope.numPagos + interes),
     'interes' : Math.round(interes),
     'capital' : $scope.importeprestamo / $scope.numPagos,
     'fechaunix' : date.unix()
}); 

答案 1 :(得分:1)

因为您在代码中添加了两天

一旦到达

config.assets.digest = false 
config.assets.compile = true 

再次在这里

'fechas': date.add(1, 'days').format("MM/DD/YYYY"),

只添加一次。见例子

  'fechaunix': date.add(1, 'days').unix()
var app = angular.module("app", []);
app.controller("ctrl", function($scope) {
  var date = moment();
  $scope.numPagos="5";
  $scope.resultados=[];

  for (var i = 0; i < parseInt($scope.numPagos); i++) {
    $scope.resultados.push({
      'numerodecuota': i + 1,
      'fechas': date.add(1, 'days').format("MM/DD/YYYY"),
      //'pagos': Math.round($scope.importeprestamo / $scope.numPagos + interes),
      //'interes': Math.round(interes),
      //'capital': $scope.importeprestamo / $scope.numPagos,
      'fechaunix': date.unix()
    });

  }
});

答案 2 :(得分:1)

你有两次方法&#34; date.add(1,&#39;天&#39;)&#34 ;;

试试这个:

       var date = moment($scope.dt);

        for (var i = 0; i < parseInt($scope.numPagos); i++) {
            var current = date.add(1, 'days');


            $scope.resultados.push({
                'numerodecuota' : i + 1,
                'fechas' : current.format("MM/DD/YYYY"),
                'pagos' : Math.round($scope.importeprestamo / $scope.numPagos + interes),
                'interes' : Math.round(interes),
                'capital' : $scope.importeprestamo / $scope.numPagos,
                'fechaunix' : current.unix()
            }); 

        }// End for loop