Created
July 23, 2012 04:51
-
-
Save ledsun/3162009 to your computer and use it in GitHub Desktop.
JavaScript 西暦→和暦の変換処理
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function toWareki(year,month,day) | |
{ | |
var wareki = ""; | |
year = Number (year); | |
if (year == 1868) | |
{ | |
/* 9月8日から明治元年 */ | |
/* 誕生日がここの人はいないだろうから細かくは気にしない */ | |
wareki = '明治元年'; | |
} | |
else if (1868 < year && year < 1912) | |
{ | |
year = year - 1867; | |
wareki = '明治' + year + '年'; | |
} | |
else if (year == 1912) | |
{ | |
year = year - 1867; | |
// 明治46年7月30日まで明治 | |
// 明治46年7月31日から大正 | |
if(month < 7 || (month == 7 && day < 31)){ | |
wareki = '明治' + year + '年'; | |
} else { | |
wareki = '大正元年'; | |
} | |
} | |
else if (1912 < year && year < 1926) | |
{ | |
year = year - 1911; | |
wareki = '大正' + year + '年'; | |
} | |
else if (year == 1926) | |
{ | |
year = year - 1911; | |
if(month < 12 || (month == 12 && day < 25)){ | |
wareki = '大正' + year + '年'; | |
} else { | |
wareki = '昭和元年'; | |
} | |
} | |
else if (1926 < year && year < 1989) | |
{ | |
year = year - 1925; | |
wareki = '昭和' + year + '年'; | |
} | |
else if (year == 1989) | |
{ | |
year = year - 1925; | |
if(month == 1 && day < 7){ | |
wareki = '昭和' + year + '年'; | |
} else { | |
wareki = '平成元年'; | |
} | |
} | |
else if (1989 < year) | |
{ | |
year = year - 1988; | |
wareki = '平成' + year + '年'; | |
} | |
else | |
{ | |
wareki = '--年'; | |
} | |
return wareki + month + "月" + day + "日"; | |
} |
You are right. I fixed.
Thank you!
( ゚Д゚)σ あ...すみません、問題がも一つあります。1989は平成元年、でも1990は平成二年ですか?
else if (1989 < year)
はOKです。year = year -1989
は違いますよ。
year = year -1988
the original code was correct。
なるほど!その通りです。直しました。
ありがとうございます。
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Konichiwa.
The last else-if should be
else if (1989 < year)
.