我有一个像2017年5月31日的日期。有了这个日期,我需要再增加2天。 然后另一个要求,在同一天我需要增加18个月。 我尝试了以下代码。
var rootDate = 31 May,2017;
var firstDate = new Date();
var lastDate = new Date();
var tempdate = firstDate.setDate(rootDate.getDate() +2);
firstDate = $filter('date')(tempdate , "dd MMM, yyyy");
var tempDateTwo = lastDate.setDate(rootDate.getMonth() +18);
secondDate = $filter('date')(tempDateTwo , "dd MMM, yyyy");
它给了我错误'无效的日期'。代码中有什么问题?
答案 0 :(得分:0)
使用此
1:添加天moment().add(2,'days').format('DD MMMM, YYYY');
。
2:添加月moment().add(18,'months').format('DD MMMM, YYYY');;
答案 1 :(得分:0)
首先,将日期转换为Date对象
var rootDate = new Date("31 May,2017");
并设置月使用setMonth
方法
lastDate.setMonth(rootDate.getMonth() +18);
angular.module("app",[])
.controller("ctrl",function($scope,$filter){
var rootDate = new Date("31 May,2017");
var firstDate = new Date();
var lastDate = new Date();
var tempdate = firstDate.setDate(rootDate.getDate() +2);
firstDate = $filter('date')(tempdate , "dd MMM, yyyy");
console.log(firstDate)
var tempDateTwo = lastDate.setMonth(rootDate.getMonth() +18);
lastDate = $filter('date')(tempDateTwo , "dd MMM, yyyy");
console.log(lastDate)
})

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="app" ng-controller="ctrl">
</div>
&#13;
答案 2 :(得分:0)
我修改了你的代码以这种方式工作,#将带来你想要实现的目标。
var rootDate = '31 May,2017';
var firstDate = new Date(rootDate);
var lastDate = new Date(rootDate);
firstDate.setDate(firstDate.getDate() + parseInt(2));
lastDate.setMonth(lastDate.getMonth() + parseInt(18));