思路:
質數是指在大於1的自然數中,除了1和該數自身外,無法被其他自然數整除的數。2是唯一一個既是偶數又是質數的數字。
首先判斷傳入的參數是否爲number類型,其次將小於2的數字和偶數排除,最後用循環去檢查數字(不需要檢查參數開方後之後的數字,只需檢查前半部分的數字就可以了)。
代碼如下:
function isPrimeNum(num) {
if(typeof num !== "number") {
return false;
} else if(num < 2) {
return false;
} else if(num === 2) {
return true;
} else if(num % 2 === 0) {
return false;
}
let sq = Math.sqrt(num);
for(let i=3; i <= sq; i += 2){
if(num % i === 0) {
return false;
}
}
return true;
}
console.log(isPrime(3));