Actionscript 月の最終日を取得する方法 - クラス Date ホームページ制作 | 墨田区

Actionscript 月の最終日を取得する方法 – クラス Date

LINEで送る
Pocket

月の最終日を取得する方法


指定された月の最終日を取得する方法をご紹介します。
実務では、当月の初日から、当月の月末までの日付を検索条件に利用したりしますよね。

以下のメソッドでそれが解決できます。




【PR】マジか?!「アレ」してるLINEスタンプっていったい・・・



/**
 * 日をミリ秒として表現
 */
private static const milliSecondsPerDay:int = 1000 * 60 * 60 * 24;

/**
 * 指定された Date 型より、その月の最終日を返します。
 *
 * @param date Date 型
 * @return Date 型
 */
public static function lastDayOfThisMonth(date:Date):Date {
    var year:Number = date.fullYear;
    var month:Number = date.month + 1;
    var addDate:Date = new Date(year, month, 1, 00, 00);
    var dueDate:Date = new Date(addDate.getTime() + (-1 * milliSecondsPerDay));
    return dueDate;
}

まず、new Date(year, month, 1, 00, 00); にて、翌月の初日を求めます。
次に、new Date(addDate.getTime() + (-1 * milliSecondsPerDay)); にて、前日の日付を求めています。
日をミリ秒として表現するところがミソです。
例として、2013/04/10 であれば、2013/04/30 が月末になりますね。
一旦 2013/05/01 の日付を求め、一日マイナスすることで、2013/04/30 が取得可能となります。
月末は、30 日で終わったり、31 日で終わったりと様々ですからね。

以下のテストを実行すると・・・
trace(lastDayOfThisMonth(new Date()));  //2013.04.10

結果は以下の通りです。
Tue Apr 30 00:00:00 GMT+0900 2013

LINEで送る
Pocket

この記事がお役に立ちましたら シェア をお願いいたします。

コメントを残す

お名前 (必須)
メールアドレス
(アドレスは公開されません)

コメント(必須)

Trackback URL