年份转换器功能
Year Converter Function
我正在尝试制作一个函数,您可以在其中输入年份,并输出 return 那一年来自哪个世纪。我很沮丧,但在逻辑上的某个地方我遗漏了一些东西而且我没有得到正确的年份值,即 2000(20 世纪,我得到 21st)
我的 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)
}
}
可能是这样的:
function centuryFromYear(year) {
return Math.floor((year - 1) / 100) + 1;
}
//* tests
[100,101,250, 1000, 1001, 1999, 2000, 2001].forEach(function(y) {
console.log(y + ' year is in ' + centuryFromYear(y) + ' century');
});
对于稍微混乱的方法表示歉意,我相信可能有更优雅的方法可用:
注意:格鲁吉亚日历上不存在负世纪和公元 0 年
function myFunction() {
year = 2000;
b = year;
if (b % 100 > 0){
b = Math.floor((year)/100);
b = b +1 ;
}
else if (b % 100 == 0){
b = Math.floor((year)/100);
}
else if (b < 100 && b > 0){
b = (Math.floor((year)/100)+1);
}
}
我正在尝试制作一个函数,您可以在其中输入年份,并输出 return 那一年来自哪个世纪。我很沮丧,但在逻辑上的某个地方我遗漏了一些东西而且我没有得到正确的年份值,即 2000(20 世纪,我得到 21st)
我的 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)
}
}
可能是这样的:
function centuryFromYear(year) {
return Math.floor((year - 1) / 100) + 1;
}
//* tests
[100,101,250, 1000, 1001, 1999, 2000, 2001].forEach(function(y) {
console.log(y + ' year is in ' + centuryFromYear(y) + ' century');
});
对于稍微混乱的方法表示歉意,我相信可能有更优雅的方法可用:
注意:格鲁吉亚日历上不存在负世纪和公元 0 年
function myFunction() {
year = 2000;
b = year;
if (b % 100 > 0){
b = Math.floor((year)/100);
b = b +1 ;
}
else if (b % 100 == 0){
b = Math.floor((year)/100);
}
else if (b < 100 && b > 0){
b = (Math.floor((year)/100)+1);
}
}