* 자바스크립트(JavaScript) 내장 함수

- 자바스크립트 자체적으로 제공되는 함수




1. 타이머 함수

- 특정한 시간에 특정한 함수를 실행


 메서드 이름

 설명 

 setTimeout(function, millisecond) 

 일정 시간 후 함수를 한 번 실행 

 setInterval(function, millisecond)

 일정 시간마다 함수를 반복 실행 

 clearTimeout(id)

 일정 시간 후 함수를 한 번 실행하는 것을 중지 

 clearInterval(id)

 일정 시간마다 함수를 반복하는 것을 중단 


<!-- time_funtion.html -->
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>time_funtion</title>
<script type="text/javascript">
	// 1초마다 반복 실행
	var interval = setInterval(function () {
		alert('<p>' + new Date() + '</p>');
	}, 1000);
	
	// 5초 후 한번 실행
	setTimeout(function() {
		clearInterval(interval); // interval 함수 타이머 종료
	}, 5000);
</script>
</head>
<body>
</body>
</html>




2. 인코딩과 디코딩 함수

- 인코딩 : 문자를 컴퓨터에 저장 또는 통신에 사용할 목적으로 부호화하는 방법

- 디코딩 : 부호화 된 문자를 원래대로 되돌리는 것


 함수 이름 

 설명 

 escape() 

 영문 알파벳과, 숫자, 일부 특수문자(@, *, -, _, +, ., /)를 제외 문자만 인코딩 

 unescape()

 영문 알파벳과, 숫자, 일부 특수문자(@, *, -, _, +, ., /)를 제외 문자만 디코딩 

 encodeURI(uri) 

 인터넷 주소에 사용되는 일부 특수문자(:, ;, /, =, ?, &)를 제외 문자만 인코딩 

 decodeURI(encodedURI) 

 인터넷 주소에 사용되는 일부 특수문자(:, ;, /, =, ?, &)를 제외 문자만 디코딩

 encodeURIComponent(uriComponent) 

 알파벳과 숫자를 제외한 모든 문자를 모두 인코딩

 decodeURIComponent(encodedURI)

 알파벳과 숫자를 제외한 모든 문자를 모두 디코딩


<!-- encode_decode.html -->
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>encode_decode</title>
<script type="text/javascript">
	var URI = 'http://gangzzang.tistory.com?test=갱짱블로그입니다.';
	
    var output = '';
    output += '▶ escape()\n'
    output += escape(URI) + '\n\n';
    output += '▶ encodeURI()\n'
    output += encodeURI(URI) + '\n\n';
    output += '▶ encodeURIComponent()\n'
    output += encodeURIComponent(URI) + '\n\n';

	alert(output);
</script>
</head>
<body>
</body>
</html>


3. 코드 실행 함수

- 문자열을 코드로 실행 할 수 있는 특별한 함수

- eval() 함수로 실행 된 코드에서 정의한 변수도 활용 가능

 함수 이름

 설명 

 eval(string) 

 string을 자바스크립트 코드로 실행 


<!-- eval.html -->
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>eval</title>
<script type="text/javascript">
	var evalString = '';
	evalString += 'var num = 10;';
	evalString += 'alert(num);';
	
	eval(evalString); // eval() 함수 호출
	
	eval(num); // eval() 함수로 호출한 코드의 변수를 사용
</script>
</head>
<body>
</body>
</html>




4. 숫자 확인 함수

- 변수에 숫자가 무한한지, number인지 확인

 함수 이름

 설명 

 isFinite()

 number가 무한한 값인지 확인, 유한한 수이면 true를 리턴

 isNaN()

 number가 숫자인지 확인, 숫자가 아니면 true를 리턴


<!-- infinite_isnan.html -->
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>infinite_isnan</title>
<script type="text/javascript">
	var num1 = 1 / 0;
	var num2 = 2;
	alert(num1 + ' 무한 : ' + isFinite(num1));
	alert(num2 + ' 유한 : ' + isFinite(num2));
	
	var num3 = 3;
	var num4 = '문자';
	
	alert('숫자 : ' + isNaN(num3));
	alert('문자 : ' + isNaN(num4));
</script>
</head>
<body>
</body>
</html>





5. 숫자 변환 함수

- Number() 함수의 단점(숫자로 바꿀수 없으면 NaN으로 변환)을 보완한 숫자 변환 함수를 제공

- parseInt() 함수와 parseFloat() 함수는 앞에서부터 숫자로 변환할 수 있는 부분까지는 모두 숫자로 변환

- 0으로 시작하거나 0x로 시작하면 10진수가 아니라 8진수, 16진수로 생각하고 변환

- parseInt() 함수의 두 번째 매개변수에 진법을 입력하면 앞의 수를 해당 진법의 수로 인식

 함수 이름

 설명 

 parseInt(string) 

 string을 정수로 변환 

 parseFloat(string)

 string을 소수로 변환


<!-- parseint_parsefloat.html -->
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>parseint_parsefloat</title>
<script type="text/javascript">
	var won = '1234원';
	var dollar = '1.2$';
	
	alert(parseInt(won) + ' : ' + parseInt(dollar));
	alert(parseFloat(won) + ' : ' + parseFloat(dollar));
</script>
</head>
<body>
</body>
</html>


+ Recent posts