废话不多说了,直接给大家贴代码了
<script> //1、非正则实现 function isPrime(num) { // 不是数字或者数字小于2 if(typeof num !== "number" || !Number.isInteger(num)) { // Number.isInterget 判断是否为整数 return false } //2是质数 if(num == 2) { return true } else if(num % 2 == 0) { //排除偶数 return false } //依次判断是否能被奇数整除,最大循环为数值的开方 var squareRoot = Math.sqrt(num) //因为2已经验证过,所以从3开始;且已经排除偶数,所以每次加2 for(var i = 3; i <= squareRoot; i += 2) { if(num % i === 0) { return false } } return true } console.log(isPrime(19)) // true //2、用正则实现: function isPrime(num) { return !/^1?$|^(11+?)/1+$/.test(Array(num + 1).join('1')) } console.log(isPrime(19)) // true</script>
以上所述是小编给大家介绍的JavaScrpt判断一个数是否是质数的实例代码 ,希望对大家有所帮助。
新闻热点
疑难解答