我使用moment.js来操纵日期。我有一个值存储在一个字段中,我想得到这个值和添加1个月。这是我的代码:
var myDate = $('#CRUEventModal #rdvStartDate').val();
alert('Date i get:' + myDate); // I get: 25-05-2016
myDate = moment(myDate).format("DD-MM-YYYY");
alert('Date i get transformed:' + myDate); // I get: NaN-NaN-0NaN
var new_date = moment(myDate, "DD-MM-YYYY").add('months', 1);
alert('End date: ' + new_date); // I get: -62164630800000
但我希望这个结果:25-06-2016
请帮忙吗?
答案 0 :(得分:2)
format
用于格式化momentjs日期,而不是指定如何解析它。
如果要将字符串解析为具有特定格式的日期,则应使用moment(string, format)
。看看at the documentation here。
var myDate = "25-05-2016";
console.log('Date I get: ' + myDate);
myDate = moment(myDate, "DD-MM-YYYY");
console.log('Date I get transformed: ' + myDate);
var new_date = moment(myDate, "DD-MM-YYYY").add(1, 'months'); // 'months' should come
// after 1 with the latest
// versions.
console.log('End date: ' + new_date);
console.log('End date (human readable): ' + new_date.format("DD-MM-YYYY"));

<script src="https://cdn.jsdelivr.net/momentjs/2.13.0/moment.min.js"></script>
&#13;