我有这个javascript用于自动设置日期过滤器到上个月的第一天和最后一天:
$(document).ready(function () {
$("#DateFrom").datepicker({ dateFormat: 'dd/mm/yy' });
$("#DateTo").datepicker({ dateFormat: 'dd/mm/yy' });
var now = new Date();
var firstDayPrevMonth = new Date(now.getYear(), now.getMonth() - 1, 1);
var firstDayThisMonth = new Date(now.getYear(), now.getMonth(), 1);
var lastDayPrevMonth = new Date(firstDayThisMonth - 1);
$("#DateFrom").datepicker("setDate", firstDayPrevMonth);
$("#DateTo").datepicker("setDate", lastDayPrevMonth);
});
Run Code Online (Sandbox Code Playgroud)
但是now.getYear()返回111而不是预期的2011年.有什么明显的我错过了吗?
我一直在为项目使用Javascript的日期,但今天注意到我之前工作的代码不再正常工作.下面的代码不是按预期产生二月,而是产生三月.
我的代码看起来像这样:
current = new Date();
current.setMonth(current.getMonth()+1); //If today is Jan, expect it to be Feb now
Run Code Online (Sandbox Code Playgroud)
这段代码每天工作到今天.这是一个Javascript错误还是我错误的方式?
请任何人共享代码,以便在JavaScript中查找上个月的当前日期的第一个日期.例如,如果当前日期是2009年1月25日,那么我应该将2008年12月1日作为结果.