查找数字的所有质因数 - JavaScript

javascriptweb developmentfront end technologyobject oriented programming更新于 2025/12/5 5:32:17

我们需要编写一个 JavaScript 函数,该函数接受一个数字并返回一个数组,其中包含所有能够精确整除输入数字的质数。

例如,如果输入数字是 18。

那么输出应该是 −

const output = [2, 3];

示例

让我们来编写该函数的代码 −

const num = 18;
const isPrime = (n) => {
   for(let i = 2; i <= n/2; i++){
      if(n % i === 0){
         return false;
      }
   };
   return true;
};
const findPrimeFactors = num => {
   const res = num % 2 === 0 ? [2] : [];
   let start = 3;
   while(start <= num){
      if(num % start === 0){
         if(isPrime(start)){
            res.push(start);
         };
      };
      start++;
   };
   return res;
};
console.log(findPrimeFactors(18));

输出

控制台输出:−

[2, 3]

相关文章


有用资源