I am trying to use this code in Javascript to verify prime numbers using an array to store them:
var nprimi = [2];
function verifica(x)
{
var i;
var x;
var k;
//for (k in nprimi)
for (k=0;k<nprimi.length;k++)
{
if (nprimi[k]==x)
return true;
else if (x%nprimi[k]==0)
return false;
}
for (i=k+1;i<x;i++)
{
if (x%i==0)
return false;
}
nprimi.push(x);
return true;
}
My problem is:
If I use
for (k=0;k<nprimi.length;k++)
for loop is running correctly, but using
for (k in nprimi)
doesn't work.
It seems that after each nprimi.push(x)
the number of elements in objetc nprimi is always zero.
Maybe it is a very stupid error, but I am not able to find it! Thank you very much for helping!