ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

ActionScript Loungeコミュのハッピーマンデーを調べる

  • mixiチェック
  • このエントリーをはてなブックマークに追加
今日が休日であることは、実は昨日知りました。あまり祝祭日に関係なく仕事をしているうえ、ハッピーマンデーという制度にはいまだ慣れません。
http://ja.wikipedia.org/wiki/%E3%83%8F%E3%83%83%E3%83%94%E3%83%BC%E3%83%9E%E3%83%B3%E3%83%87%E3%83%BC%E5%88%B6%E5%BA%A6

ということで、ハッピーマンデーを調べるスクリプトです。

var nYear:Number = 2006;
var happyMondays:Array = xGetHappyMondays(nYear);
for (var n:Number = 0; n<happyMondays.length; n++) {
 var happyMonday:Array = happyMondays[n];
 trace(nYear+"年"+happyMonday[0]+"月"+happyMonday[1]+"日");
}
// [出力]:
2006年1月9日
2006年7月17日
2006年9月18日
2006年10月9日

function xGetHappyMondays(nYear:Number):Array {
 // ハッピーマンデーの月週リスト
 var happyMondays_array:Array = [[1, 2], [7, 3], [9, 3], [10, 2]];
 var result_array:Array = new Array();
 for (var i:Number = 0; i<happyMondays_array.length; i++) {
  var j:Number = happyMondays_array[i];
  result_array.push([j[0], xGetNthDay(nYear, j[0], j[1], 1)]);
 }
 return result_array;
}
// xGetNthDay(): 指定年月の指定した順序の曜日を求める
// nYear年nMonth月の第nNth、nDay曜日
// nMonthは月数をそのまま
// nDayは日曜日0〜土曜日6間での数値
function xGetNthDay(nYear:Number, nMonth:Number, nNth:Number, nDay:Number):Number {
 --nMonth;
 var my_date:Date = new Date(nYear, nMonth, 1);
 return 7*nNth-6+(nDay+7-my_date.getDay())%7;
}

コメント(1)

FLASH-japan「サマータイムを時刻に設定するための条件付け」に、xGetNthDay()の戻り値についてもう少し工夫したバージョンを投稿していました。
http://www.flash-jp.com/modules/newbb/viewtopic.php?topic_id=2907&forum=6&post_id=16303#forumpost16303

#そんな記憶もあったのですが、面倒で探しませんでした。
#たまたま、見つかったので。

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

ActionScript Lounge 更新情報

ActionScript Loungeのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。

人気コミュニティランキング