Instantly share code, notes, and snippets.

Embed
What would you like to do?
JavaScript 西暦→和暦の変換処理
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 + "";
}
@shunwen

This comment has been minimized.

Show comment
Hide comment
@shunwen

shunwen Jul 23, 2012

Konichiwa.
The last else-if should be else if (1989 < year).

shunwen commented Jul 23, 2012

Konichiwa.
The last else-if should be else if (1989 < year).

@ledsun

This comment has been minimized.

Show comment
Hide comment
@ledsun

ledsun Jul 23, 2012

You are right. I fixed.
Thank you!

Owner

ledsun commented Jul 23, 2012

You are right. I fixed.
Thank you!

@shunwen

This comment has been minimized.

Show comment
Hide comment
@shunwen

shunwen Jul 23, 2012

( ゚Д゚)σ あ...すみません、問題がも一つあります。1989は平成元年、でも1990は平成二年ですか?
else if (1989 < year) はOKです。year = year -1989 は違いますよ。
year = year -1988 the original code was correct。

shunwen commented Jul 23, 2012

( ゚Д゚)σ あ...すみません、問題がも一つあります。1989は平成元年、でも1990は平成二年ですか?
else if (1989 < year) はOKです。year = year -1989 は違いますよ。
year = year -1988 the original code was correct。

@ledsun

This comment has been minimized.

Show comment
Hide comment
@ledsun

ledsun Jul 23, 2012

なるほど!その通りです。直しました。
ありがとうございます。

Owner

ledsun commented Jul 23, 2012

なるほど!その通りです。直しました。
ありがとうございます。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment