我遇到了flex的问题。 如何获取Flex中特定月份的天数?
由于
答案 0 :(得分:7)
使用Date对象,将日期设置为0,getDate
将返回当月的最后一天,也就是日期计数;你也要给你想要检查的年份,因为你知道2月可以有29天。
function getDayCount(year:int, month:int):int{
var d:Date=new Date(year, month, 0);
return d.getDate();
}
trace(getDayCount(2012,2));
答案 1 :(得分:0)
上面的例子不适用于1月份!
新日期(2011,0,0)将于2010年12月31日返回
新日期(2011年,1,0年)将于2011年1月31日返回
新日期(2011,1,1)返回02/01/2011
答案 2 :(得分:0)
通过指定年份,所需月份+ 1和日期0来创建新的日期对象。这将为所需月份的最后一天创建日期对象。然后在对象上调用getDate()以返回最后一天。
请注意,基于Flex的月份为零,因此Jan = 0,Feb = 1,依此类推。因此,如果您想知道2012年2月的最后一天是什么,您将执行以下操作:
var FEB:int = 1;
var date:Date = new Date(2012, FEB + 1, 0);
var lastDayInFeb:Number = date.getDate();
这是一个more complete example,其中包含几个非单元测试和一个可重复使用的静态方法,用于返回一个月的最后一天。