在ActionScript中,如何在月末獲取日期編號?ActionScript - 如何獲得當月的最大日期
六月實施例
getEndOfMonth()返回;
七月實施例
getEndOfMonth()返回;
在ActionScript中,如何在月末獲取日期編號?ActionScript - 如何獲得當月的最大日期
六月實施例
getEndOfMonth()返回;
七月實施例
getEndOfMonth()返回;
在很多語言中,您可以通過獲取下個月的第0天的日期值,然後從中獲得該日期值。因此,也許嘗試:
var d:Date = new Date(2009,7,0);
var day:Number=d.getDate();
如果不工作,你可以得到下一個月的第一天,再減去一天
var millisecondsPerDay:int = 1000 * 60 * 60 * 24;
var d:Date = new Date(2009,7,1);
d.setTime(d.getTime() - millisecondsPerDay);
var day:Number=d.getDate();
只有十二口人(和一個特殊的閏年的情況) - 把它寫出來不會那麼糟糕。
static public function getEndOfMonth(month:uint, isLeap:Boolean = false):uint
{
return [31, 28 + isLeap, 31, 30, 30, 31, 31, 30, 31, 30, 31][month];
}
您可以添加一個名爲月與常量的uint對象,例如Month.JANUARY == 0
等,將其封裝等等...
因爲我不會總是在七月運行,我改變了對\t \t var d:Date = new Date(); (d.getMonth()+ 1); d.setMonth(d.getMonth()); \t \t d.setDate(0); \t \t \t var day:Number = d.getDate(); 醜陋,但作品。我想知道是否有更好的東西......無論如何。謝謝你,即使你看起來像我這個曾經隨意打我的英格蘭橄欖球隊的球員。 – stevedbrown 2009-07-09 23:01:24
爲什麼要計算已知的東西? LUT更快,更乾淨... – LiraNuna 2009-07-09 23:21:43
這是應用程序加載時發生的事情,而不是所有的時間。從技術上講,動作腳本月份從1開始,但我知道你的意思。對於某些應用程序來說,值得做數組,有時候並不那麼重要。就我而言,calc'ed的答案很好,有時候做陣列會更好。 – stevedbrown 2009-07-10 04:27:43