Javascript 年份转换器功能
我试着做一个函数,你输入一年,然后输出返回那一年的时间。我记下了大部分,但在逻辑的某个地方,我遗漏了一些东西,我没有得到正确的年份值,即2000年(20世纪,我得到21世纪) 我的JS:Javascript 年份转换器功能,javascript,string,function,integer,converter,Javascript,String,Function,Integer,Converter,我试着做一个函数,你输入一年,然后输出返回那一年的时间。我记下了大部分,但在逻辑的某个地方,我遗漏了一些东西,我没有得到正确的年份值,即2000年(20世纪,我得到21世纪) 我的JS: function centuryFromYear(year) { if (year <= 100) { console.log("um") return year * 0 + 1 } else if (year > 100 && ye
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)
}
}
功能世纪自年(年){
如果(第100年和第1001年){
console.log(“tres”)
var kek=年/100
var lul=数学楼层(千桶)
返回(lul+1)
}
}
可能是这样的:
功能世纪自年(年){
返回数学楼层((1年级)/100)+1;
}
//*测验
[10010125010001001199920002001].forEach(函数(y){
console.log(y++“year”以“+centuryFromYear(y)+“century”为单位);
});代码>对于有点混乱的方法表示歉意,我相信可能有更优雅的方法可用:
注意:格鲁吉亚日历上不存在负世纪和公元0年
函数myFunction(){
年份=2000年;
b=年;
如果(b%100>0){
b=数学楼层((年)/100);
b=b+1;
}
否则如果(b%100==0){
b=数学楼层((年)/100);
}
否则如果(b<100&&b>0){
b=(数学下限((年)/100)+1;
}
}
年份*0+1
总是1
。您没有本年度的案例1001
。那些if
语句根本没有理由。在101
到1000
的这些年里,你没有归还任何东西。这是一个相当琐碎的问题,关于如何做到这一点有很多参考资料。你的代码。你好,2000年实际上是21世纪,你得到的答案是正确的。很傻,对吧?@AbhilashSingh不,这是错误的。再次阅读你的链接:“它从2001年1月1日开始,将于2100年12月31日结束。”@xufox傻瓜,我!令人尴尬。@Xufox告诉所有在1999年12月31日庆祝千年结束的人
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);
}
}