求100以内的质数

我写的

function getPrimeNumInOneHundred()

{

var result = [];

for(var i = 2; i < 100; i++)

{

  var succeed = true;

  for(var j = 2; j <= i/2 ; j++)

  {

   if(i%j == 0 && i != j)

   {

    succeed = false;

    break;

   }

  }

  

 if(succeed)

 {

  result.push(i);

 } 

}

return result;

}


var result = getPrimeNumInOneHundred();


alert(result);


别人写的

function  getNum(MaxNum ){
var  count = 1;   
var  PrimeArys = [2];
var  PrimeTemp = [];             
var  oNum = Math.ceil( Math.sqrt( MaxNum ) );  
for (i=3; i<oNum; i+=2){        
   if ( PrimeTemp[i]== null ){     
   for (j=i; i*j<=MaxNum; j+=2){     
   PrimeTemp[ i*j ] = 0;    
   }
}
}
for (i=3; i<=MaxNum; i+=2){            
     if ( PrimeTemp[i]== null )             
       PrimeArys[ count++ ] = i;  
}   
return  PrimeArys;
}


注意到array也有map的调用方式

你可能感兴趣的:(求100以内的质数)