OR
誰でも自由に記事を投稿・編集できるオープンリファレンス
記事ID:189
区分:プログラム  |  分類:JavaScript  |  最終更新日:2012/02/10
クリエイティブ・コモンズ 表示-継承ライセンス 2.1
【JavaScript】西暦を和暦に変換する
関連タグ:html, javascript, スクリプト, 言語, 西暦, 和暦, 変換, 明治, 大正, 昭和, 平成
このエントリーをはてなブックマークに追加      
本文
履歴
編集
閲覧数: 26,597

暦を西暦から和暦に変換するには、元となる西暦の年数から各年号の「元年から 1 年引いた年」を引いて求めます。 各年号の「元年から 1 年引いた年」は以下になります。

 

年号 元年から1年引いた年
平成 1988年
昭和 1925年
大正 1911年
明治 1867年

 

対象年がどの範囲の年かを判定することで、和暦に変換することができます。

 

【サンプルコード】

if (y > 1988) { 
    s = "平成"+(y-1988)+"年";
} else if (y > 1925) {
    s = "昭和"+(y-1925)+"年";
} else if (y > 1911) {
    s = "大正"+(y-1911)+"年";
} else if (y > 1867) {
    s = "明治"+(y-1867)+"年";
}

※ 上記サンプルは変数 y が元となる西暦年になります。

 

西暦年を入力させ、それに対する和暦を表示するプログラムは下記「サンプルコード」を参照下さい。

この記事とは逆に和暦を西暦に変換したい場合は、こちらを参照下さい。

 

サンプルコード

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<title>サンプル</title>
<script language="JavaScript" type="text/javascript"><!--
window.onload = function(){
document.getElementById("convert").onclick = function(){
var y = document.getElementById("seireki").value;
y = parseInt(y);
if (isNaN(y)) { s = "数字を入力して下さい。"; }
else if (y > 1988) { s = "平成"+(y-1988)+"年"; }
else if (y > 1925) { s = "昭和"+(y-1925)+"年"; }
else if (y > 1911) { s = "大正"+(y-1911)+"年"; }
else if (y > 1867) { s = "明治"+(y-1867)+"年"; }
else { s = "西暦は1868(明治元年)より大きい年数を指定下さい。"; }
document.getElementById("wareki").value = s;
}
}
--></script>
</head>
<body>
<h1>西暦を和暦に変換する</h1>
<form name="sampleForm" id="sampleForm" method="get" action="sample.cgi">
<div>西暦:<input type="text" id="seireki" name="seireki"></div>
<div>和暦:<input type="text" id="wareki" name="wareki"></div>
<div><input type="button" value="和暦へ変換" id="convert"></div>
</form>
</body>
</html>
関連記事
外部リンク
外部リンクはありません。
- 記事検索 -