JavaScriptで節分の日を調べる関数

Pocket

節分は毎年2月3日です。しかし昔は2月4日の年もあったような気がします。
調べてみると1952年から1984年までは閏年は2月4日が節分でした。若い人はこの事実を知らないでしょう。
ウィキペディアに節分が何日かを求める表が載っていたので、JavaScriptで関数を書いてみました。
西暦年を与えると2月の何日かを返します。1901年から2100年まで対応しています。

function setsubun(nen) {
  var errorMessage = "年が範囲外です。";
  if(nen < 1901) {
    throw new Error(errorMessage);
  } else if(nen < 1915) {
    return(nen - 1) % 4 < 1 ? 3 : 4;
  } else if(nen < 1952) {
    return(nen - 1) % 4 < 2 ? 3 : 4;
  } else if(nen < 1985) {
    return(nen - 1) % 4 < 3 ? 3 : 4;
  } else if(nen < 2021) {
    return 3;
  } else if(nen < 2055) {
    return(nen - 1) % 4 < 1 ? 2 : 3;
  } else if(nen < 2088) {
    return(nen - 1) % 4 < 2 ? 2 : 3;
  } else if(nen < 2101) {
    return(nen - 1) % 4 < 3 ? 2 : 3;
  } else {
    throw new Error(errorMessage);
  }
}

2021年1月14日追記
コードに誤りがあったので修正しました。

[ 2014年9月3日 | カテゴリー: JavaScript | タグ: ]

« | »

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

送信してください。


タグ

カテゴリー

最近の投稿

最近のコメント

固定ページ

アーカイブ

stabucky

写真

メタ情報