자바스크립트 내장 함수
1. 타이머 함수
- 특정한 시간에 특정한 함수를 실행가능하게 한다.
- 타이머 함수 종류
메서드 이름 |
설명 |
setTimeout(function, milisecond) |
일정 시간 후 함수를 한번 실행 |
setInterval(function, milisecond) |
일정 시간마다 함수를 반복해서 실행 |
clearTimeout(id) |
일정 시간 후 함수를 한 번 실행하는 것을 중단시킴 |
clearInterval(id) |
일상 시간마다 함수를 반복하는 것을 중단시킴 |
2. 인코딩과 디코딩 함수
- 인코딩: 문자를 컴퓨터에 저장 혹은 통신에 사용할 목적으로 부호화 하는 방법
- 디코딩: 인코딩을 원래대로 되돌려 놓는 것
함수 이름 |
설명 |
escape() |
적절한 정도로 인코딩합니다 |
unescape() |
적절한 정도로 디코딩합니다 |
encodeURI(url) |
최소한의 문자만 인코딩합니다 |
decodeURI(encodedURI) |
최소한의 문자만 디코딩합니다 |
encodeURIComponent(urlComponent) |
대부분의 문자를 모두 인코딩합니다 |
decodeURIComponent(encodedURI) |
대부분의 문자를 모두 디코딩합니다 |
[escape( )]
- 영문 알파벳, 숫자, 일부 특수문자(@, *, -, _, +, ., /)를 제외하고 모두 인코딩
- 1byte문자는 %XX의 형태로, 2byte문자는 %uXXXX형태로 변환
[encodeURI( )]
- ecape()함수에서 인터넷 주소에 사용되는 일부 특수문자( :, ;, /, =, ?, &)는 변환하지 않음
[encodeURIComponent( )]
- 알파벳과 숫자를 제외한 모든 문자를 인코딩
- UTF-8인코딩과 같음
인코딩은 초기에 escape()함수만 있었으나, 시간이 지남에 따라 진화했다. 현재는 encodeURIComponent()함수를 가장 많이 사용하고 있다.
3. 코드 실행 함수
- 자바스크립트는 문자열을 코드로 실행할 수 있는 특별한 함수를 제공한다.
함수 이름 |
설명 |
eval(string) |
string을 자바스크립트 코드로 실행한다 |
4. 숫자 확인 함수
- 변수의 숫자가 Infinity와 NaN(Not a number)와 같은 특별한 숫자인지 확인하는 함수
- 대부분의 프로그래밍 언어는 0으로 숫자를 나누면 오류가 발생하며 프로그램이 멈추지만, 자바스크립트는 0으로 숫자를 나누면 infinity값이 들어간다
함수 이름 |
설명 |
isFinite() |
number가 무한한 값인지 확인한다 |
isNaN() |
number가 NaN(숫자가 아닌 값)인지 확인한다 |
5. 숫자 변환 함수
함수 이름 |
설명 |
Number() |
객체를 숫자로 바꾸어준다 |
parseInt(string) |
string을 정수로 바꾸어준다 |
parseFloat(string) |
string을 유리수로 바꾸어준다 |
- 여기서 Number의 경우 숫자로 바꿀 수 없으면 NaN으로 변환하다는 단점이 있다
ex)
<string>
var won = '1000원';
var dollar = '1.5$';
alert(Number(won) + ' : ' + Number(dollar));
</script>
이 경우 alert창에서 "NaN, NaN"이 출력된다.
반면 parseInt를 사용했을 경우 "원"과 "$"를 제외하고 숫자만 고려하여 "1000 : 1"이,
parseFloat를 사용했을 경우 "1000 : 1.5"가 출력된다.
6. 문자열 변환 함수
함수 이름 |
설명 |
String() |
객체를 문자로 변환하여 출력 |
7. 가변인자 함수
- 매개변수의 개수가 변할 수 있는 함수
- 대표적으로 Array()함수가 있다
- Array함수의 형태
함수 형태 |
설명 |
Array() |
빈 배열을 만든다 |
Array(number) |
매개변수 만큼의 크기를 가지는 배열을 만든다 |
Array(any, ..., any) |
매개변수를 배열로 만든다 |