JS练习:打印出1-10000之间所有的质数

ぃ、小莉子 提交于 2020-01-28 04:54:50

console.time(“计时器的名字”):用来开启一个计时器;
这个字符串(计时器的名字)将会作为计时器的标识;
console.timeEnd(“计时器的名字”):用来停止一个计时器;

程序性能优化:
不加break 195ms
先加break后 29ms
再修改为j<=Math.sqrt(i)后 3ms

<!DOCTYPE html>
<html>
 <head>
  <meta charset="UTF-8">
  <title></title>
  <script type="text/javascript">
   //在程序执行前,开启计时器
   console.time("test");
   //打印2-10000之间所有的数
   for(var i = 2; i <= 10000; i++) {
    //创建一个布尔值,用来保存结果,默认i是质数
    var flag = true;
    //判断i是否是质数
    //获取到2-Math.sqrt(i)之间的所有的数
    for(var j = 2; j <= Math.sqrt(i); j++) {
     //判断i是否能被j整除
     if(i % j == 0) {
      //如果进入判断则证明i不是质数,修改flag值为false
      flag = false;
      //此时循环再执行已经没意义了,使用break来结束循环
      break;
     }
    }
    //如果是质数,则打印i的值
    if(flag) {
     //console.log(i);
    }
   }
   //终止计时器
   console.timeEnd("test");
  </script>
 </head>
 <body>
 </body>
</html>
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!