javascript - momentJS 日期字串加 5 天
我有一個開始日期字串 "20.03.2014",我想用 moment.js 在此基礎上加 5 天,但在警示視窗中沒有得到新的日期 "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
更新日期:2016年1月19日
截至版本 2.8.4 - 使用 .add(5, 'd')(或 .add(5, 'days'))取代 .add('d', 5)
var new_date = moment(startdate, "DD-MM-YYYY").add(5, 'days');
感謝 @Bala 提供的信息。
更新日期:2014年3月21日
這就是你必須做的才能得到那種格式。
這是一個更新過的 fiddle
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);
原始:2014年3月20日
你沒有告訴它要加哪個/什麼單位。使用 -
var new_date = moment(startdate, "DD-MM-YYYY").add('days', 5);
答案#2
moment(moment('2015/04/09 16:00:00').add(7, 'd').format('YYYY/MM/DD HH:mm:ss'))
必須先格式化,然後再轉換回 moment。
答案#3
你可以以不同的格式新增天數:
// 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/#/manipulating/add/
答案#4
函數 add() 會返回舊的日期,但會改變原始日期 :)
startdate = "20.03.2014";
var new_date = moment(startdate, "DD.MM.YYYY");
new_date.add(5, 'days');
alert(new_date);
答案#5
var end_date = moment(start_date).clone().add(5, 'days');
答案#6
如果我們想使用當前日期或今天的日期:
var new_date = moment(moment(), "MM-DD-YYYY").add(7, 'days')
alert(new_date);
