JavaScrpt判斷一個數(shù)是否是質(zhì)數(shù)的實例代碼
更新時間:2017年06月11日 09:00:29 作者:longzhoufeng
本文通過實例代碼給大家分享了JavaScrpt判斷一個數(shù)是否是質(zhì)數(shù),需要的朋友參考下吧
廢話不多說了,直接給大家貼代碼了
<script>
//1、非正則實現(xiàn)
function isPrime(num) {
// 不是數(shù)字或者數(shù)字小于2
if(typeof num !== "number" || !Number.isInteger(num)) {
// Number.isInterget 判斷是否為整數(shù)
return false
}
//2是質(zhì)數(shù)
if(num == 2) {
return true
} else if(num % 2 == 0) { //排除偶數(shù)
return false
}
//依次判斷是否能被奇數(shù)整除,最大循環(huán)為數(shù)值的開方
var squareRoot = Math.sqrt(num)
//因為2已經(jīng)驗證過,所以從3開始;且已經(jīng)排除偶數(shù),所以每次加2
for(var i = 3; i <= squareRoot; i += 2) {
if(num % i === 0) {
return false
}
}
return true
}
console.log(isPrime(19)) // true
//2、用正則實現(xiàn):
function isPrime(num) {
return !/^1?$|^(11+?)\1+$/.test(Array(num + 1).join('1'))
}
console.log(isPrime(19)) // true
</script>
以上所述是小編給大家介紹的JavaScrpt判斷一個數(shù)是否是質(zhì)數(shù)的實例代碼 ,希望對大家有所幫助。
相關(guān)文章
JavaScript中保留兩位小數(shù)的方法總結(jié)
這篇文章主要把相關(guān)保留兩位小數(shù)的方法總結(jié)了一下,不同的場景用不同的方法,即用即取,文中的示例代碼講解詳細,?感興趣的小伙伴可以了解一下2023-06-06
CommonJS與ES6?Module的使用區(qū)別分析
這篇文章主要為大家介紹了CommonJS與ES6?Module的使用區(qū)別分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-04-04
Jvascript學(xué)習(xí)實踐案例(開發(fā)常用)
一些在Jvascript學(xué)習(xí)實踐的實例代碼,需要的朋友可以參考下2012-06-06

