JavaScript计算指定范围质数的实现与优化

作者:缓存笔记

时间:2026-10-22

浏览:376

本文详解JavaScript如何高效计算指定范围内的质数。通过介绍开方优化算法,大幅减少运算次数。提供完整源代码及在线HTML/CSS/JavaScript代码运行工具,方便用户直接测试。同时推荐在线分解质因数计算器,助力JavaScript数学运算与算法学习。

文章目录

JavaScript计算指定范围质数的实现与优化

本文介绍使用JavaScript计算特定区间内质数的方法,供读者参考。

质数(亦称素数)有无限多个。其定义为大于1的自然数中,仅能被1和自身整除的数。

优化算法:判断质数时,只需检查该数是否能被小于其平方根的所有整数整除。此方法显著减少运算量,提升效率。该算法思路源自《Java求质数的几种常用算法》。

以下是使用JavaScript计算指定范围质数的完整源代码:

源代码与在线测试


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>JavaScript获取指定范围内的质数</title>
<style>
body{word-break:break-all;word-wrap:break-word}
</style>
</head>
<body>
<script>
  function isPrimeNumber(v) {//判断是否为质数
    var s = Math.floor(Math.sqrt(v));
    for (var i = s; i > 1; i--) if (v % i == 0) return false;
    return true;
  }
  function getPrimeNumber(min, max) {//获取指定范围内的质数集合
    if (min > max) { var t = max; max = min; min = t;}
    var rst = [];
    for (var i = Math.max(2, min) ; i <= max; i++) if (isPrimeNumber(i)) rst.push(i);
    return rst;
  }
  var min = parseInt(prompt('请输入最小数字')) || 0;
  var max = parseInt(prompt('请输入最大数字')) || 0;
  document.write(min+'~'+max+'范围内质数有:'+getPrimeNumber(min, max));
</script>
</body>
</html>

可使用在线HTML/CSS/JavaScript代码运行工具(http://tools.jb51.net/code/HtmlJsRun)对代码进行测试,运行结果如下:

 JavaScript计算指定范围质数的实现与优化

JavaScript计算指定范围质数的实现与优化

JavaScript计算指定范围质数的实现与优化

此外,推荐另一款功能相似的在线工具供参考:

在线分解质因数计算器: http://tools.jb51.net/jisuanqi/factor_calc

更多关于JavaScript的内容,可查看本站专题:《JavaScript数学运算用法总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript数组操作技巧总结》、《JavaScript事件相关操作与技巧大全》、《JavaScript操作DOM技巧总结》及《JavaScript字符与字符串操作技巧总结》。

希望本文内容对JavaScript程序设计有所帮助。

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章