Строка даты dateJS добавить 5 дней
У меня есть строка даты начала "20.03.2014", и я хочу добавить к этому 5 дней с помощью moment.js, но я не получаю новую дату "25.03.2014" в окне предупреждения.
вот мой код JavaScript:
startdate = "20.03.2014";
var new_date = moment(startdate, "DD-MM-YYYY").add("DD-MM-YYYY", 5);
alert(new_date);
вот мой jsfiddle: http://jsfiddle.net/jbgUt/1/
Как я могу решить это?
Мне нравится этот формат строки "25.03.2014"
Надеюсь, кто-нибудь может мне помочь.
Ответы
Ответ 1
ОБНОВЛЕНО: 19 января 2016 г.
На момент 2.8.4 - использовать .add(5, 'd')
(или .add(5, 'days')
) вместо .add('d', 5)
var new_date = moment(startdate, "DD-MM-YYYY").add(5, 'days');
Спасибо @Bala за информацию.
ОБНОВЛЕНО: 21 марта 2014 г.
Это то, что вам нужно сделать, чтобы получить этот формат.
Здесь обновленная скрипка
startdate = "20.03.2014";
var new_date = moment(startdate, "DD-MM-YYYY").add('days', 5);
var day = new_date.format('DD');
var month = new_date.format('MM');
var year = new_date.format('YYYY');
alert(day + '.' + month + '.' + year);
ОРИГИНАЛ: 20 марта 2014 г.
Вы не говорите, как/какую единицу добавить. Используйте -
var new_date = moment(startdate, "DD-MM-YYYY").add('days', 5);
Ответ 2
Функция add() возвращает старую дату, но изменяет исходную дату:)
startdate = "20.03.2014";
var new_date = moment(startdate, "DD.MM.YYYY");
new_date.add(5, 'days');
alert(new_date);
Ответ 3
moment(moment('2015/04/09 16:00:00').add(7, 'd').format('YYYY/MM/DD HH:mm:mm'))
должен форматировать, а затем снова преобразовывать в момент.
Ответ 4
Вы можете добавить дни в разных форматах:
// Normal adding
moment().add(7, 'days');
// Short Hand
moment().add(7, 'd');
// Literal Object
moment().add({days:7, months:1});
Подробнее об этом читайте в документации Moment.js: https://momentjs.com/docs/#/manipulation/add/.
Ответ 5
Вы можете уменьшить то, что они сказали в нескольких строках кода:
var nowPlusOneDay = moment().add('days', 1);
var nowPlusOneDayStr = nowPlusOneDay.format('YYYY-MM-DD');
alert('nowPlusOneDay Without Format(Unix Date):'+nowPlusOneDay);
alert('nowPlusOneDay Formatted(String):'+nowPlusOneDayStr);
Ответ 6
Чтобы получить фактический рабочий пример, который возвращает то, что можно было бы ожидать:
var startdate = "20.03.2014";
var new_date = moment(startdate, "DD.MM.YYYY");
var thing = new_date.add(5, 'days').format('DD/MM/YYYY');
window.console.log(thing)
Ответ 7
- добавьте https://momentjs.com/downloads/moment-with-locales.js на свою HTML-страницу
-
var todayDate = moment().format('DD-MM-YYYY');//to get today date 06/03/2018 if you want to add extra day to your current date
тогда -
var dueDate = moment().add(15,'days').format('DD-MM-YYYY')//to add 15 days to current date..
пункты 2 и 3 используются в вашем коде jquery...
Ответ 8
var end_date = moment(start_date).clone().add(5, 'days');