CODEDRAGON ㆍDevelopment/JavaScript, jQuery, ...
내장함수 isFinite함수 / isNaN 함수
학습 내용
- 0으로 나눌 경우 Infinity/음수인 경우 -Infinity를 반환하므로 함수를 통해서 확인 해야 정확함
- number2==NaN 비교시 항상 false를 반환하기 때문에 isNaN()을 사용해야 정상적인 결과를 얻을 수 있음
- 0으로 나누기
- 문자로 나누기
- number1 == Infinity
- number3 == -Infinity
- number2==NaN
소스 코드
<html>
<head>
<meta charset="UTF-8">
<title>isFinite함수 / isNaN 함수</title>
<script type="text/javascript">
document.write('<br>******* 0으로 나누기 *******<br>');
//Infinity로 출력됨
var number1 = 10/0;
document.write('number1 = ' + number1 + '<br>');
if(isFinite(number1)){ //0으로 나누지 않았음
document.write('유한<br>');
}else{ //0으로 나눔
document.write('무한<br>');
}
document.write('<br>******* 문자로 나누기 *******<br>');
//NaN로 출력됨
var number2 = 10/'A';
document.write('number2 = ' + number2 + '<br>');
if(isNaN(number2)){ //숫자가 아닌 경우
document.write('숫자 아님<br>');
}else{ //숫자인 경우
document.write('숫자 임<br>');
}
//******* isFinite함수 / isNaN 함수 사용시 주의 *******
document.write('<br>******* number1 == Infinity *******<br>');
if(number1 == Infinity){
document.write('무한<br>');
}else{
document.write('유한<br>');
}
document.write('<br>******* number3 == -Infinity *******<br>');
//-Infinity 반환
var number3 = -10/0;
document.write('number3 = ' + number3 + '<br>');
if(number3 == -Infinity){
document.write('무한<br>');
}else{
document.write('유한<br>');
}
document.write('<br>******* number2==NaN *******<br>');
//항상 false를 반환하기 때문에 isNaN()을 사용해야 정상적인 결과를 얻을 수 있음
if(number2==NaN){ //숫자가 아닌 경우
document.write('숫자 아님<br>');
}else{ //숫자인 경우
document.write('숫자 임<br>');
}
</script>
</head>
<body>
</body>
</html>
출처: <https://github.com/10zeroone/study_javascript/blob/master/WebContent/ch04-function/13.html>
'Development > JavaScript, jQuery, ...' 카테고리의 다른 글
기본 타입과 표준 메소드 (0) | 2014.06.29 |
---|---|
html-parseInt()/parseFloat() (0) | 2014.06.29 |
eval( ) (0) | 2014.06.25 |
자바스크립트 소스 파일(.js) 생성 방법 (0) | 2014.06.18 |
내장함수(인코딩/디코딩) (0) | 2014.06.16 |