新JavaScript例文辞典

和暦から西暦に変換する

説明

まず、和暦はH20(平成20年)、S44(昭和44年)、T8(大正8年)、M43(明治43年)のように数値の前に判別する英字1文字があるものとします。その上で和暦から西暦に変換するには、各年号の元年の西暦年数を加算します。平成は1988、昭和は1925、大正は1911、明治は1867を加算します。

サンプルプログラム

window.onload = function(){
document.getElementById("convertButton").onclick = function(){
var n = document.getElementById("yearJP").value;
var n = wareki_to_seireki(n);
if (n) {
document.getElementById("year").value = n+"年";
}else{
document.getElementById("year").value = "変換できませんでした";
}
}
}
function wareki_to_seireki(str){
var m = str.charAt(0).toUpperCase();
var y = eval(str.substring(1,str.length));
if ((m == "H") && (y > 0) && (y < 50)) return 1988 + y; // 平成
if ((m == "S") && (y > 0) && (y < 65)) return 1925 + y; // 昭和
if ((m == "T") && (y > 0) && (y < 16)) return 1911 + y; // 大正
if ((m == "M") && (y > 0) && (y < 46)) return 1867 + y; // 明治
return null;
}
サンプルを実行
[戻る]