和暦から西暦に変換する


動作ブラウザ 【 IE:3.0   NN:2.0
Internet Explorer Netscape Navigator Opera iCab Safari
3.0x 4.0x 4.5 5.0x 5.5 6.0 2.0x 3.0x 4.0x 4.x 6.0 7.0 7.x 2.x 1.x
Windows - -
Macintosh -
UNIX - - - - - -

ポイント 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;
説  明 まず和暦はH12(平成12年)、S44(昭和44年)、T8(大正8年)、M43(明治43年)のように数値の前に判別する英文字があるものとします。その上で和暦から西暦に変換するには、各年号の元年の西暦年数を加算します。平成は1988、昭和は1925、大正は1911、明治は1867を加算します。
サンプル <html> <head> <title>和暦から西暦に変換する</title> <script language="JavaScript"><!-- 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 -1; } // --></script> </head> <body> <form name="myFORM"> 和暦<input type="text" name="dt"> <input type="button" value="変換" onClick="alert(wareki_to_seireki(document.myFORM.dt.value))"> </form> </body> </html>
補足説明 なし

■サンプルスクリプトを実行する >>実行
■各ブラウザでの動作結果を見る >>View!

写真素材 PIXTA