자바스크립트(Javascript) 문자인지 여부를 판단할 수 있는 isFinite 함수

 

환경: Eclipse Mars

 

데이터를 숫자인지 문자인지 판단할 수 있는 함수가 있습니다. isNaN() 함수는 문자이면 true 를 리턴하지만 isFinite() 는 반대입니다. 숫자이면 true, 문자이면 false 를 리턴합니다.


isFinite() 함수는 isNaN() 함수와 함께 데이터의 숫자와 문자 여부를 판단할 수 있습니다. 데이터의 유효성 점검할 때 많이 이용하게 되죠. 첫 번째 예제는 숫자와 문자열에 숫자가 들어간 데이터입니다. 문자열에 숫자가 들어가 있어도 내부에서 숫자로 변환한 후 판단하게 되므로 true 를 리턴하게 됩니다.

<script type="text/javascript">
<!--
	document.write("isFinite(0) = " + isFinite(0) + "<br/>");
	document.write("isFinite(\"10\") = " + isFinite("10") + "<br/>");
//-->
</script>


자바스크립트(Javascript) 문자인지 여부를 판단할 수 있는 isFinite 함수

 

두 번째 예제는 문자열에 숫자와 문자가 혼합되어 있는 경우입니다. parseInt() 함수는 아래와 같은 경우 “50 AAA” 이면 50 을 반환합니다. 그러니까 숫자로 변환이 가능하지만 isFinite() 함수는 문자로 인식해서 false 를 반환합니다

<script type="text/javascript">
<!--
	document.write("isFinite('50 AAA') = " + isFinite("50 AAA") + "<br/>"); 
	document.write("isFinite('AAA 50') = " + isFinite("AAA 50") + "<br/>"); 
//-->
</script>

자바스크립트(Javascript) 문자인지 여부를 판단할 수 있는 isFinite 함수

 

마지막은 날짜 형식을 판단할 때 입니다. 숫자 조합으로 만들어진 날짜일 경우는 숫자로 변환이 가능하기 때문에 true 를 리턴하지만 문자열로 되어 있는 날짜는 문자로 인식해서 false 를 리턴합니다

<script type="text/javascript">
<!--
	document.write("isFinite(2015/10/05) = " + isFinite(2015/10/05) + "<br/>"); 
	document.write("isFinite(\"2015/10/05\") = " + isFinite("2015/10/05") + "<br/>"); 
//-->
</script>

자바스크립트(Javascript) 문자인지 여부를 판단할 수 있는 isFinite 함수


Posted by 녹두장군