담비의 개발블로그

국비지원교육 23일차(5주차&자바스크립트) 본문

국비교육

국비지원교육 23일차(5주차&자바스크립트)

담비12 2023. 12. 13. 12:02
함수란?

 

하나의 특별한 목적의 작업을 수행하도록 설계된 독립적인 블록을 의미합니다.

즉,  어떤 일을 실행하려고 할 때 함수를 통해 실행할 수 있게 도와주는 것이다.

 

 

 

매개변수(parameter) : 함수를 호출할 때 인수로 전달된 값을 함수 내부에서 사용할 수 있게 해주는 변수
인수=인자(argument) : 입력
반환값(return value) : 출력

 

- 함수의 호출

매개변수 (parameter) > 인수(argument)

즉, 선언>호출

 

함수는 변수와 다르게 () 를 가진다. 괄호가 필수이다.

 

 

아래 예제에 대한 설명.

함수는 function 키워드를 사용하여 구성한다.

함수이름(addNum)은 함수를 구분하는 식별자(identifier)이다.

x, y는 매개변수이다. (전달인자=파라메터)

addNum(2,3)은 함수의 호출이다.

 

지역변수

- 함수 내에서 선언된 변수

- 지역변수는 선언된 함수 내에서만 유효하며, 함수가 종료되면 메모리에서 사라진다.

- 함수의 매개변수 또한 함수 내에서 정의되는 지역 변수처럼 작동한다.

- 지역변수를 선언할 때 var 또는 let을 사용하여 선언해야한다. 만약 이렇게 하지 않으면 전역변수가 된다.

 

전역변수

- 함수의 외부에서 선언된 변수를 말한다.

- 전역변수는 프로그램의 어느 영역에서나 접근할 수 있다. 

- 웹 페이지가 닫혀야만 메모리에서 사라진다.

 

 

 

자바스크립트에서 미리 정의되어 있는 함수

 



- eval() : 문자열로 표현된 자바스크립트 코드를 실행하는 함수.
- isFinite() : 전달된 값이 유한한 수인지를 검사하여 그 결과를 반환한다. 만약 인수로 전달된 값이 숫자가 아니라면 숫자로 변환하여 검사한다.
- isNaN() : 전달된 값이 NaN인지 검사하여 그 결과를 반환한다.
- parseFloat() : 문자열을 파싱하여 부동 소수점 수로 반환한다.
- parseInt() : 문자열을 파싱하여 정수로 반환한다.
ex)
parselnt("안뇽 123"); //NaN
parselnt("123 안뇽"); //123
parselnt("123 12 45"); //123
- decodeURI() :  encodeURI() 함수나 다른 방법으로 만들어진 URI를 해독한다.
- decodeURIComponent() : encodeURIComponent() 함수나 다른 방법으로 만들어진 URI 컴포넌트를 해독한다.
- encodeURI() : URI에서 주소를 표시하는 특수문자를 제외하고, 모든 문자를 이스케이프 시퀀스 처리하여 부호화한다.
- encodeURIComponent() : encodeURI() 함수에서 부호화하지 않은 모든 문자까지 포함하여 이스케이프 시퀀스 처리한다.
- escape() : 전달받은 문자열에서 특정 문자들을 16진법 이스케이프 시퀀스 문자로 변환한다.
- unescape() :  전달받은 문자열에서 escape() 함수나 다른 방법으로 만들어진 16진법 이스케이프 시퀀스 문자를 원래의 문자로 변환한다.
- Number() : 전달받은 객체의 값을 숫자로 반환한다.
- String() : 전달받은 객체의 값을 문자열로 반환한다


Math객체
- Math.min() : 인수로 전달받은 값 중에서 가장 작은 수를 반환한다.
- Math.max() : 인수로 전달받은 값 중에서 가장 큰 수를 반환한다.
- Math.random() : 0보다 크거나 같고 1보다 작은 무작위 숫자를 반환한다.
- Math.round() : 인수로 전달받은 값을 소수점 첫 번째 자리에서 반올림한다.
- Math.floor() : 내림과 올림 > 전달받은 값과 같거나 작은 수 중에서 가장 큰 정수를 반환한다.
ex) 
//10.95 >10
//11.01>11
//-10.95>-11
//-11.01>-12
- Math.ceil() : 인수로 전달받은 값과 같거나 큰 수 중에서 가장 작은 정수를 반환한다. 올림이라고 생각하면 편하다.
- Math.sin() : 인수로 전달받은 값의 사인(sine) 함숫값을 반환한다.



String 메소드
- indexOf() : String 인스턴스에서 특정 문자나 문자열이 처음으로 등장하는 위치의 인덱스를 반환한다.
- lastIndexOf() : String 인스턴스에서 특정 문자나 문자열이 처음으로 등장하는 위치나 마지막으로 등장하는 위치를 반환한다.
- charAt() : String 인스턴스에서 전달받은 인덱스에 위치한 문자를 반환한다.
- charCodeAt() : String 인스턴스에서 전달받은 인덱스에 위치한 문자의 UTF-16 코드를 반환한다.
- charPointAt() :  String 인스턴스에서 전달받은 인덱스에 위치한 문자의 유니코드 코드 포인트를 반환한다. 
- split() : String 인스턴스를 구분자를 기준으로 나눈 후, 나뉜 문자열을 하나의 배열로 반환한다.
- concat() : String 인스턴스에 전달받은 문자열을 결합한 새로운 문자열을 반환한다.
- toUpperCase() : String 인스턴스의 모든 문자를 대문자로 변환한 새로운 문자열을 반환
- toLowerCase() : String 인스턴스의 모든 문자를 소문자로 변환한 새로운 문자열을 반환
- trim() : String 인스턴스의 양 끝에 존재하는 모든 공백과 줄 바꿈 문자(LF, CR 등)를 제거한 새로운 문자열을 반환한다.
- search() : 인수로 전달받은 정규 표현식에 맞는 문자나 문자열이 처음으로 등장하는 위치의 인덱스를 반환한다. 
- match() : 인수로 전달받은 정규 표현식에 맞는 문자열을 찾아서 하나의 배열로 반환한다.
- replace() : 인수로 전달받은 패턴에 맞는 문자열을 대체 문자열로 변환한 새 문자열을 반환한다.

 

타이머(timer)
window 객체는 일정 시간이 지난 뒤에 함수를 호출할 수 있도록 다음 메소드를 제공한다.
- setTimeout() : 명시된 시간이 지난 뒤에 지정된 함수를 호출
- setInterval() : 지정된 시간 간격마다 지정된 함수를 반복적으로 호출

이렇게 설정된 함수의 호출을 취소할 수 있도록 다음 메소드를 제공한다.
- clearTimeout() : 계획된 함수의 호출을 취소할 수 있다.
- clearInterval() : 반복되는 함수의 호출을 취소할 수 있다.