JavaScript
TIL 1009 소수구하기 null 과 undefined 구분
짱닭
2020. 10. 12. 15:32
반응형
소수구하기
내 풀이
function prime(num){
let count=0;
for(let i=1;i<=num;i++){
if(num%i===0){
count++;
}
}
if(count===2){
return true;
}else{
return false;
}
}
num의 약수를 count로 센 다음,
약수가 2개뿐이라면 소수인것으로 판별.
다른 방법
function prime(num) {
let sqrt = parseInt(Math.sqrt(num));
if (num === 2) {
return true;
}
if (num % 2 === 0) {
return false;
}
for (let i = 3; i <= sqrt; i += 2) {
if (num % i === 0) {
return false;
}
}
return true;
}
"2보다 크고, 해당 숫자의 제곱근보다 작거나같은 숫자중에 약수가 없다면 소수"라는 명제에 기반한 풀이
나누는 수는 홀수만 적용되므로 i는 2씩 증가한다.
null 과 undefined 구분
원래 JavaScript에는 null 타입이 없다.
따라서
if(typeof arg === 'object' && !arg){
arg===null; //true;
}
//또는
if(arg === null){
return true;
}
반응형