-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Description
time-flies/public/js/script.js の function calc() の以下のコード部で、西暦0年、紀元前0年が生ずるケースがある。
if (d >= 0) {
return "西暦 " + parseInt(d) + " 年"
} else {
return "紀元前 " + parseInt(-d) + " 年"
}
■再現コード
function getYearString(d) {
if (d >= 0) {
return "西暦 " + parseInt(d) + " 年"
} else {
return "紀元前 " + parseInt(-d) + " 年"
}
}
■再現
getYearString(0)
"西暦 0 年"
getYearString(0.1)
"西暦 0 年"
getYearString(-0.1)
"紀元前 0 年"
■修正案
function getYearString(d) {
y = Math.floor(d)
if (y >= 1) {
return "西暦 " + y + " 年"
} else {
return "紀元前 " + (Math.abs(y) + 1) + " 年"
}
}
■修正案の計算結果
getYearString(1)
"西暦 1 年"
getYearString(0.5)
"紀元前 1 年"
getYearString(0)
"紀元前 1 年"
getYearString(-0.5)
"紀元前 2 年"
getYearString(-1)
"紀元前 2 年"
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels