2016-09-12 63 views
1

我想從用戶輸入到使用javascript的特定日期添加幾個月。 嘗試了一些重複問題的方法,但它仍然不值得。在javascript中添加月迄今爲止

我有一個用戶訂閱表單,其中我有一個客戶端創建的日期。有一個輸入字段,用戶輸入訂閱的月數。 現在我想創建一個標籤,我想打印訂閱到期日期,我想要「添加客戶端創建日期與訂閱的月份數」

請幫我解決這個問題。

謝謝您提前。

+0

哪裏是你的代碼?給定一個JS日期'someDate',你可以用'someDate.setMonth(someDate.getMonth()+ numToAdd)'來爲它添加幾個月。 – nnnnnn

+0

您可以將日期對象聲明爲'var nowDate = new Date(YYYY,MM,DD,HH,MM,SS)',稍後可以向其中添加另一個Date對象。查看MDN的Date()文檔。 –

+0

如果現有的解決方案都不能幫助您,請描述您嘗試過哪些方案,以及爲什麼它們不適用於您的案例,否則我們會再次給您相同的答案。從你的問題來看,爲什麼簡單的setMonth不應該這麼做並不明顯。 –

回答

0

您可以使用setMonth和geMonth。以今天的日期增加4個月的例子。

> var today = new Date(); 
> var numberOfMonths = 4 
> today.setMonth(today.getMonth()+numberOfMonths); 
0

dateTime對許多程序員來說,操縱一直是個挑戰。

爲了避免所有瘋狂的計算,可能會給你頭痛和錯誤 - 我建議你看看momentjs庫。

您可以使用.add()方法輕鬆地在當前日期時間添加一個月份。

例子:

console.log('1 month from current datetime is := ' + moment().add(1, 'months').format("MM-DD-YYYY"));
<script src="http://momentjs.com/downloads/moment.js"></script>

這裏是add API的文檔:
http://momentjs.com/docs/#/manipulating/