我需要检查日期,一个是我选择的日期,第二个需要是当前日期+ 36周。
我环顾四周,我见过的所有解决方案都涉及GetDate()
+天。
new Date().getDate() + 252
这不起作用,当前的日期是2014/03/07,所以上面的行需要7并添加252,这是不正确的。
我正在寻找使用JavaScript或jQuery的任何解决方案。
提前致谢。
答案 0 :(得分:6)
var newdate = new Date();
newdate.setDate(newdate.getDate()+252); // 36 week * 7 day = 252
alert(newdate.getFullYear() + "-" + (newdate.getMonth() + 1) + "-" + newdate.getDate()); // alert(newdate);
答案 1 :(得分:0)
试试这个:
var now = new Date();
now.setDate(now.getDate()+252);
alert(now.getFullYear() + "-" + (now.getMonth() + 1) + "-" + now.getDate());
答案 2 :(得分:0)
您是否尝试过date.setDate()
功能?
var today = new Date();
today.setDate( today.getDate() + 252 );
答案 3 :(得分:0)
我知道你说过你只是想使用JavaScript和jQuery,但是有一个名为Moment.js的库,擅长这样做。
moment().add('weeks', 36);
就这么简单。为什么不试一试?
答案 4 :(得分:0)
请有人告诉我如何使当前日期= 36周,然后将其解析为'yyyy-MM-dd'格式
您需要的一切都在其他答案中,但要明确
// Start with a date
var d = new Date();
// Create a new date 36 weeks in the future
var e = new Date(+d + 36*7*24*60*60*1000);
// Convert to ISO 8601 format and get just the date part
alert(e.toISOString().split(/t/i)[0]);
或者自己获取位和格式化字符串:
function pad(n){return (n<10?'0':'')+n}
alert(e.getFullYear() + '-' + pad(e.getMonth()+1) + '-' + pad(e.getDate()));