1.判断n是否为number类型,是否为整数,是否小于2;

2.若n == 2返回true;

3.从3至n的算术平方根(square)之间的奇数,如果n取余为0,则不是奇数。

var isPrime = (n) => {
  if(typeof n !== 'number' || !Number.isInteger(n) || n < 2) {
    return false
  } else if(n == 2) {
    return true
  }
  if(n % 2 == 0) {
    return false
  }
  var square = Math.sqrt(n)
  for(var i = 3;i <= square;i += 2) {
    if(n % i === 0) {
      return false
    }
  }
  return true
}

 

posted on 2018-10-10 08:57  百里登风  阅读(1276)  评论(0编辑  收藏  举报