下面是代码。当使用小(5位)或大(12位)数字参数调用函数largestPrime(number)时,无论何时,此代码都会使浏览器崩溃。我仔细检查了一下,但仍然不知道出了什么问题。请不要用不同的解决方案来回答这个问题,我想了解我的代码有什么问题。谢谢
var sqRoot = function(n) {
return Math.sqrt(n);
}
var isInt = function(n) {
if(n%1 === 0) {
return true;
}
else {
return false;
}
}
var primeCheck = function(n) {
var res = true;
var y = 2;
while(y <= sqRoot(n) && res === true) {
if(!isInt(n) || isInt(n/y)) {
res = false;
}
else {
y+=1;
}
}
return res;
}
var largestPrime = function(n) {
var y =2;
var temp = true;
var res = n/y;
while(temp === true) {
if(primeCheck(res)) {
temp = false;
}
else {
y+=1;
}
}
return res;
}
largestPrime(/*here goes the number to be evaluated*/)