查看: 403|回复: 0

[JavaScript/JQuery] JavaScrpt判断一个数是否是质数的实例代码

发表于 2018-1-7 09:45:34

废话不多说了,直接给大家贴代码了

  1. <script>
  2. //1、非正则实现
  3. function isPrime(num) {
  4. // 不是数字或者数字小于2
  5. if(typeof num !== "number" || !Number.isInteger(num)) {
  6. // Number.isInterget 判断是否为整数
  7. return false
  8. }
  9. //2是质数
  10. if(num == 2) {
  11. return true
  12. } else if(num % 2 == 0) { //排除偶数
  13. return false
  14. }
  15. //依次判断是否能被奇数整除,最大循环为数值的开方
  16. var squareRoot = Math.sqrt(num)
  17. //因为2已经验证过,所以从3开始;且已经排除偶数,所以每次加2
  18. for(var i = 3; i <= squareRoot; i += 2) {
  19. if(num % i === 0) {
  20. return false
  21. }
  22. }
  23. return true
  24. }
  25. console.log(isPrime(19)) // true
  26. //2、用正则实现:
  27. function isPrime(num) {
  28. return !/^1?$|^(11+?)\1+$/.test(Array(num + 1).join('1'))
  29. }
  30. console.log(isPrime(19)) // true
  31. </script>
复制代码

以上所述是小编给大家介绍的JavaScrpt判断一个数是否是质数的实例代码 ,希望对大家有所帮助。



回复

使用道具 举报