使用JS在线编辑器运行以下代码
1.验证一个数是否是素数(素数也称质数)
素数是指在大于1的自然数中,除了1和它本身以外不再有其他因数的自然数。
如果这个数是 2 或 3,一定是素数;
如果是偶数,一定不是素数;
如果这个数不能被 3到它的平方根中的任一数整除,m必定是素数。而且除数可以每次递增2(排除偶数)
function isPrime(num){
if(num===2 || num===3){
return true
}
if(num%2===0){
return false
}
let divisor = 3,limit = Math.sqrt(num);
while(limit >= divisor){
  if (num % divisor === 0) {
   return false;
  } else {
   divisor += 2;
  }
  }
  return true; //结束就返回true,否则在while中就返回false
}
2.斐波那契
从第3项开始,每一项都等于前两项之和
F(1)=1,F(2)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 3,n ∈ N*)
最简单的做法:递归。
function fibonacci(n){
if (n <= 0) {
   return 0;
  }
if(n===1 || n===2){
return 1
}
if(n>2){
return fibonacci(n-1)+fibonacci(n-2)
}
}
3.求最大公约数
质因数分解法:把每个数分别分解质因数,再把各数中的全部公有质因数提取出来连乘,所得的积就是这几个数的最大公约数。
例如:求24和60的最大公约数,先分解质因数,得24=2×2×2×3,60=2×2×3×5,24与60的全部公有的质因数是2、2、3,它们的积是2×2×3=12,所以,(24,60)=12。
把几个数先分别分解质因数,再把各数中的全部公有的质因数和独有的质因数提取出来连乘,所得的积就是这几个数的最小公倍数。
最大公因数,也称最大公约数、最大公因子,指两个或多个整数共有约数中最大的一个。
除数 在a和b的范围内,如果同时a和b除以除数的余等于0,就将此时的除数赋值给res;除数自增,不断循环上面的计算,更新res。
function getMaximumCommonDivisor(a,b){
let res = 1,divisor = 2;
if (a < 2 || b < 2){
return 1;
  }
while(a >= divisor && b >= divisor){
if (a % divisor === 0 && b % divisor === 0) {
   res = divisor;
  }
divisor++;
}
return res; //循环获取最大值
}
console.log(getMaximumCommonDivisor(24,60)) //12