윤제니

JavaScript - 재귀함수, 내장함수 - number( ) / parseInt( ) / parseFloat( ), 특수값 본문

JavaScript/JavaScript

JavaScript - 재귀함수, 내장함수 - number( ) / parseInt( ) / parseFloat( ), 특수값

꿈다루 2020. 5. 2. 02:31

재귀함수

 : 함수 내에서 자신의 함수를 다시 호출하는 함수 

   arguments 객체callee 속성이 존재 => 현재 실행 중인 함수를 의미하여 재귀함수를 만드는데 사용 가능 

 

=> callee 속성을 이용해보자 (결과는 위와 동일)

     arguments.callee( )는 현재 실행중인 fac( n ) 함수를 의미 

 

 

내장함수

[ 함수 ]

  1. 사용자 정의 함수 : 사용자가 필요에 따라 만들 수 있는 함수
  2. 내장 함수 : 자바스크립트에 기본적으로 내장되어 있는 함수들

 1) 인코딩 함수와 디코딩 함수

     인코딩과 디코딩이 필요한 이유 : 웹에서 데이터값을 문자 방식으로 서로 주고받아(쿼리 정보) 처리해야 할 경우

                                                      데이터값에 한글과 같은 유니코드 문자가 포함되어 인식하지 못할 수 있기 때문 

     예) '자바스크립트' 문자를 인코딩하면 '%xx'로 부호화 해주고 인코딩된 문자를 디코딩 해주면 원래 문자인 '자바스크립트'가 된다. 

함수명 설명
escape( )

1. escape(str)일 때 str 문자를 인코딩 

2. 영문, 숫자와 특수 문자 중 * - / + @ _ . 을  제외한 문자를 인코딩 

unescape( ) unescape(str)일 때 문자를 디코딩
decodeURI( ) decodeURI(str)일 때 str 문자를 디코딩 
encodeURI( )

1. encodeURI(str)일 때 str 문자를 인코딩 

2. URI는 URL을 포함하는 개념 

예) URL 주소에 쿼리 정보를 보낼 수 있는 형식 

      http://jenny.com/search?name=jenny&age=n

3. 영문, 숫자와 특수문자 중 ! ( ) , - _ * ~ + / . ? : @ & = $ # 을 

    제외한 문자를 인코딩 한다.

 

 

encodeURIComponent( )

encodeURIComponent(str)일 때 str 문자를 인코딩 

영문,숫자와 특수문자 중 ! ( ) - _ * ~ 제외한 문자를 인코딩 

decodeURIComponent( ) decodeURIComponent(str)일 때 str 문자를 디코딩 

 

 

 2) 숫자, 유/무한값 판별 함수

함수명 설명
isNaN( )

isNaN(n)일 때 n 값이 숫자인지 아닌지를 판별하여 

n값이 숫자가 아니면 true 반환, 숫자면 false 반환

isFinite( )

isFinite(n)일 때 n값이 유한값인지 무한값인지 판별하여 

n값이 유한값이면 true 반환, 무한값이면 false 반환

 

 

 

 3) 숫자 및 문자 변환 함수 

함수명 설명
Number( )

Number(n)일 때 n 값을 숫자로 변환

ex) num="3.14"  ->  num=3.14

parseInt( )

parseInt(n)일 때 n 값에 숫자와 문자가 포함되어 있을 경우 

정수 부분만 숫자로 변환 

ex) num="3.14abc"  ->  num=3

parseFloat( )

parseFloat(n)일 때 n 값에 숫자와 문자가 포함되어 있을 경우

소수 부분까지 숫자로 변환

ex) num="3.14abc"  ->  num=3.14

String

String(n)일 때 n 값을 문자로 바꾸어 준다. 

 

 [ 자바스크립트에서 제공하는 여러 개의 특수값 ]

  • Nan(Not a Number)
  • undefiend : 변수를 생성한 뒤 변수에 값을 저장하지 않았을 때 반환되는 값
  • infinity : 무한대 값이 나오면 반한해 주는 값

 

 4) 문자를 자바스크립트로 변경하는 함수

함수 설명
eval( )

eval("var num=5") 일 때 문자 "var num=5" 를 

자바스크립트 코드 var num=5로 변경해 준다.