事情是我相信我已经构建了使其发生的代码,问题是我试图将其用作jchallenger.com挑战的答案,但页面不接受我的代码作为有效的答案。
谁能解释给我为什么网站不接受我的代码,我怎么能解决它?我的代码是正确的,对吧?
下面是我的代码:function checkPrime(number) {
for (var i = 2; i < number; i++) {
if (number % i === 0) {
return false;
}
}
return true;
}
function myFunction(number) {
if (checkPrime(number)) {
return number;
} else {
while (checkPrime(number) === false) {
number++;
}
}
return number;
}
console.log(myFunction(38)); //the return should be 41
console.log(myFunction(7)); //the return should be 7
console.log(myFunction(115)); //the return should be 127
console.log(myFunction(2000)); //the return should be 2003
看起来该网站只允许您拥有该功能而没有其他功能。特别是在这种情况下:没有单独的功能。因此,如果我把checkPrime
函数放入myFunction
中,它将成功通过。
function myFunction(number) {
function checkPrime(number) {
for (var i = 2; i < number; i++) {
if (number % i === 0) {
return false;
}
}
return true;
}
if (checkPrime(number)) {
return number;
} else {
while (checkPrime(number) === false) {
number++;
}
}
return number;
}
function myFunction(a) {
for (let i = 2; i < a; i++) {
if (a % i === 0) {
return myFunction(++a);
}
}
return a;
}