用js求数组中的质数
时间: 2024-10-27 22:02:05 浏览: 10
primefactors:获取数组中数字的素数分解
在JavaScript中,求解数组中的质数可以分为两步:首先,我们需要检查一个数字是否为质数;然后遍历数组,对每个数字应用这个检查。这里是一个简单的实现方法:
```javascript
function isPrime(num) {
if (num <= 1) return false;
for (let i = 2; i * i <= num; i++) {
if (num % i === 0) return false;
}
return num > 1; // 因为1既不是质数也不是合数,所以需要特别处理
}
function findPrimesInArray(arr) {
return arr.filter(isPrime);
}
// 使用示例
const numbers = [3, 5, 7, 11, 13, 23, 29, 37, 46]; // 示例数组
const primes = findPrimesInArray(numbers);
console.log(primes); // 输出:[3, 5, 7, 11, 13, 23, 29, 37]
```
在这个代码中,`isPrime`函数用于检测一个数是否是质数,`findPrimesInArray`函数则利用数组的`filter`方法,筛选出所有通过`isPrime`检查的质数。最后,我们打印出找到的所有质数。
如果你想得到它们用连字符连接的形式,可以在`findPrimesInArray`之后再做一次处理:
```javascript
const primeStrings = primes.map(String).join('-');
console.log('3-' + primeStrings); // 输出:3-3-5-7-11-13-23-29-37
```
以上就是如何使用JavaScript求解数组中的质数。
阅读全文