【发布时间】:2017-08-11 01:58:39
【问题描述】:
我正在尝试创建一个函数,您可以在其中输入年份,然后输出返回该年份所在的世纪。我大部分时间都下来了,但是在逻辑的某个地方我遗漏了一些东西,我没有得到正确的年份,即 2000 年(20 世纪,我得到 21 世纪)
我的 JS:
function centuryFromYear(year) {
if (year <= 100) {
console.log("um")
return year * 0 + 1
} else if (year > 100 && year <= 1000) {
console.log("dois")
var kek = year / 100
var lul = Math.floor(kek)
} else if (year > 1001) {
console.log("tres")
var kek = year / 100
var lul = Math.floor(kek)
return (lul + 1)
}
}
【问题讨论】:
-
year * 0 + 1永远是1。您今年没有案例1001。那些if声明根本没有理由。101到1000的这些年来你没有返回任何东西。这是一个相当琐碎的问题,有很多关于如何做到这一点的资源。 Rubber Duck Debug你的代码。 -
您好,2000 年实际上是 21 世纪,您得到的答案是正确的。 en.wikipedia.org/wiki/21st_century。很傻,对吧?
-
@AbhilashSingh 不,这是错误的。再次阅读您的链接:“它始于 2001 年 1 月 1 日,并将于 2100 年 12 月 31 日结束。”
-
@xufox 傻,我!尴尬。
-
@Xufox——告诉所有在 1999 年 12 月 31 日庆祝千禧年结束的人。;-)
标签: javascript string function integer converter