moment.js添加月份但格式不正确

时间:2016-05-28 13:47:30

标签: javascript jquery momentjs

我使用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

请帮忙吗?

1 个答案:

答案 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;
&#13;
&#13;