सीधे शब्दों में आज की तारीख तक 30 दिनों जोड़ें:
var now = new Date();
now.setDate(now.getDate() + 30);
हालांकि, कि क्या तुम सच में करना चाहते हैं? या आप आज एक महीने और अधिक प्राप्त करना चाहते हैं? अमेरिका के लिए
var dString = '9/5/2011';
var dParts = dString.split('/');
var in30Days = new Date(dParts[2] + '/' +
dParts[1] + '/' +
(+dParts[0] + 30)
);
दिनांक स्वरूप, स्वैप भागों 0 और 1:
आप का उपयोग कर एक तारीख वस्तु के लिए विज्ञापन/एम/y तारीख में बदल सकते हैं
var in30Days = new Date(dParts[2] + '/' +
dParts[0] + '/' +
(+dParts[1] + 30)
);
लेकिन इसे पाने के लिए बेहतर है फ़ंक्शन को देने से पहले एक ISO8601 प्रारूप में दिनांक, आपको वास्तव में एक ही फ़ंक्शन में दिनांक पार्सिंग और अंकगणित मिश्रण नहीं करना चाहिए। एक व्यापक तिथि पार्सिंग फ़ंक्शन जटिल है (अत्यधिक नहीं, लेकिन वे बहुत लंबे समय तक हैं और बहुत सारे परीक्षण की आवश्यकता है), आपके पास डेट ऑब्जेक्ट होने के बाद अंकगणित काफी सरल है।
आप दिनांक ओ बनाने के लिए थोड़ा और काम करने के लिए आवश्यकता होगी प्रश्न में गैर-यूएस दिनांक प्रारूप का उपयोग करके इंजेक्ट करें। – Phil
नहीं, मैं नहीं करता हूं। उपरोक्त एक आईएसओ 8601 प्रारूप दिनांक स्ट्रिंग बनाता है, जिसे ईसीएमएस्क्रिप्ट दिनांक वस्तु डिफ़ॉल्ट रूप से पार करती है। प्रारूप में असंबद्ध मूल में एक छोटी सी त्रुटि थी, लेकिन मैंने तब से संपादित किया है। :-) – RobG
@RobG मेरा मतलब प्रारंभिक दिनांक ऑब्जेक्ट समय सेट करने के लिए गैर-यूएस दिनांक स्ट्रिंग को पार्स करना था (* ed: ऐसा लगता है कि मेरा मतलब क्या है *) ;-) – Phil