大于自己的最大公因数以后是一定无法整除的
例如:25
1 25
5 5
5就是它的最大公因数,对于它是否为质数的判断仅限于1,5就可以了
console.time("test");
for(var i=2 ; i<=100000 ; i++){
var flag = true;
for(var j=2 ; j<=Math.sqrt(i) ; j++){
if(i%j == 0){
//如果进入判断则证明i不是质数,修改flag值为false
flag = false;
//一旦进入判断,则证明i不可能是质数了,此时循环再执行已经没有任何意义了
break;
//不加break 215ms
//加break 25ms
//修改j<=后 2.6
}
}
//如果是质数,则打印i的值
if(flag){
console.log(i);
}
}
//终止计时器
console.timeEnd("test");