JavaScript에서 변수가 숫자인지 확인하는 3가지 방법
NOTE: In JavaScript, special values like
NaN
,Infinity
and-Infinity
are numbers too - though, we'll be ignoring those values.
1) isNan() 사용
isNaN()
는 값이 NaN
인지 아닌지를 결정합니다. 이것을 이용하여 변수가 숫자형인지 아닌지를 판단할 수 있습니다.var numberOfpushUpsToday = 34;
if(!isNaN(numberOfpushUpsToday)){
console.log('It is a number')
}
else {
console.log('It is not a number')
}
!isNaN(34) // returns true
!isNaN('34') // returns true
!isNaN('Hello') // returns false
!isNaN(true) // returns true
!isNaN(false) // returns true
!isNaN('undefined') // returns false
제한 사항:
1) 부울 값이 숫자
true
및 0
로 변환되므로 부울 값에 대해 1
가 반환되므로 때때로 오해의 소지가 있습니다.2)
null
값에도 동일한 문제가 있습니다. true를 반환하므로 코드를 작성할 때 주의해야 합니다.2) typeof() 사용
typeof
연산자는 평가되지 않은 피연산자의 유형을 나타내는 문자열을 반환합니다.num = 45
strng = '34'
typeof num // returns 'number'
typeof strng // returns "string"
typeof undefined // returns "undefined"
typeof null // returns "object"
변수가 숫자 유형이면 문자열
number
을 반환합니다. 이것을 사용하여 변수가 숫자 유형인지 확인할 수 있습니다.var numberOfpushUpsToday = 34;
if(typeof numberOfpushUpsToday === 'number' ){
console.log('It is a number')
}
else {
console.log('It is not a number')
}
typeof()
는 isNaN()
보다 훨씬 더 나은 성능을 보입니다. 문자열 변수, null 및 부울 값이 숫자가 아님을 올바르게 판별합니다.3) Number.isFinite() 사용
함수
isFinite()
는 전달된 값이 유한한지 확인합니다. 인수는 먼저 숫자로 변환된 다음 값이 유한한지 확인하므로 위에서 언급한 모든 방법 중에서 가장 좋은 방법입니다.Number.isFinite(34) // returns true
Number.isFinite('Hello') // returns false
Number.isFinite(undefined) // returns false
Number.isFinite(true) // returns false
Number.isFinite(null) // returns false
var numberOfpushUpsToday = 34;
if(Number.isFinite(numberOfpushUpsToday) ){
console.log('It is a number')
}
else {
console.log('It is not a number')
}
결론:
이러한 방법은 부울 값
undefined
및 null
로 인해 까다로울 수 있지만 일상 생활에서 몇 가지 문제를 해결하는 데 도움이 됩니다. 필요에 따라 코드를 작성할 때 주의해야 합니다.그리고 요약하자면!!!
고맙습니다..
피드백이나 생각이 있으면 아래에 의견을 말하십시오.
Reference
이 문제에 관하여(JavaScript에서 변수가 숫자인지 확인하는 3가지 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/sanchithasr/3-ways-to-check-if-variable-is-a-number-in-javascript-5731텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)