使用for循环和filter函数计算小于等于n的所有质数
时间: 2024-10-21 11:12:55 浏览: 17
基于jupyter notebook的python编程—–使用列表实现筛选法求素数(输入一个大于 2 的自然数,然后输出小于该数字的所有素数组成的列表)
5星 · 资源好评率100%
在JavaScript中,你可以使用`Array.prototype.filter()`方法结合一个自定义的检查素数的函数,以及一个for循环来实现这个功能。首先,你需要编写一个辅助函数`isPrime(num)`判断一个数字是否为质数。然后使用`for`循环遍历到给定的数`n`,再对每个数应用`filter`函数过滤出小于等于`n`并且是质数的数字。
这是一个简单的示例:
```javascript
function isPrime(num) {
if (num < 2) return false;
for (let i = 2; i <= Math.sqrt(num); i++) {
if (num % i === 0) return false;
}
return true;
}
function findPrimes(n) {
let primes = [];
for (let i = 2; i <= n; i++) { // 从2开始,因为所有自然数中的第一个质数是2
if (isPrime(i)) {
primes.push(i);
}
}
return primes;
}
// 调用函数并打印结果
let result = findPrimes(50);
console.log("小于等于50的所有质数:", result);
阅读全文