본문 바로가기
Programming/Javascript

[Javascript] 함수, function

by Bam_t 2021. 2. 24.
728x90

1. 함수

함수란 어떤 입력을 받으면 결과를 돌려주는 구조이다. 간단히 말해서 어떤 기능을 수행해주는 블록이라고 생각할 수 있습니다. 이 함수들은 자바스크립트에서 제공하기도 하고(메소드 라고 하는 클래스 함수 등) 사용자가 직접 정의해서 사용할 수 있습니다.

 

2. 함수의 선언 방법

함수의 선언에는 크게 네가지 방식이 있습니다.

 

1. function 명령

2. Function 생성자

3. 함수 리터럴 표현

4. 애로우 함수

 

각 선언 방법에 대해서는 해당포스트 들에서 다루고 지금은 네가지 방법이 존재한다고 아시면 됩니다. 

 

 

3. 함수의 기본 구조

함수는 보통 다음과 같은 구성을 갖습니다.

함수명(인수) {

	반환값;
}

 

함수명은 말그대로 함수를 사용하기 위한 함수의 이름이며 다음과 같은 기본 규칙을 가지고 명명합니다.

1. 변수명 지을때의 규칙을 따른다. 변수 선언과 명명 규칙 참조

2. 함수의 처리가 연상되도록 이름을 짓는다. 이때 동사+명사의 형태로 이름을 짓습니다. 예) getWidth, setSpeed

 

인수는 함수의 동작에서 사용되는 값을 가진 변수(혹은 수)를 지정합니다. 콤마(,)로 여러개의 인수를 지정할 수 있습니다. 이때 인수로 사용되는 변수는 해당 함수 내에서만 유효하게 참조가 가능합니다.

 

반환값은 함수의 처리결과를 돌려주기 위한 값입니다. return 명령으로 반환값을 돌려주게 되는데 return 명령을 하게되면 반환값을 돌려주는 동시에 함수의 처리가 종료됩니다. 그래서 함수 최후에 적거나 제어구문과 함께 return 명령을 사용합니다. 그리고 반환값이 반드시 존재하는 것도 아니기에 return명령은 필수 구성이 아닙니다. return명령이 없을 경우 자동적으로 'undefined'를 반환합니다.

 

 

 

4. return명령

return명령은 개행하지 않는다.

자바스크립트에서는 세미콜론으로 문장의 끝을 구분한다고 했었습니다. 만약 세미콜론을 기입하지 않더라고 자동적으로 세미콜론을 삽입하여 문장을 해석하는데, 이때 return명령은 함수의 종료를 의미하므로 return명령을 개행하게 되면 함수가 즉시 종료되고 이하의 문장들은 실행되지않습니다.

function addNumber(num1, num2) {
	return
    num1 + num2;
}

위와 같이 개행하게 되면 return문장이 return;으로 해석되어 종료되고 이하의 num1 + num2명령은 실행되지 않습니다. 그러므로 return명령을 도중에 개행하면 안됩니다.

만약 너무 길어서 개행하고 싶다면 소괄호를 이용하여 다음과 같이 기술합니다.

function addNumber(num1, num2) {
    return(
        num1 + num2
    );
}
728x90

댓글