JUST GO

[공통] 사용자 함수 본문

JavaScript/학습내용

[공통] 사용자 함수

root_go 2022. 10. 5. 09:08

사용자 함수

  • (사용자) 함수(Function)는 주로 특정 기능이나 반복되는 로직을 분리하기 위해 사용한다.
  • 반환(return) : 반환은 어떠한 함수를 호출하여 해당 함수가 되는 값을 반환하기 위해 사용한다.

'return 반환값;' 형식으로 사용한다.

  • 함수는 호출(Call)하지 않으면 그 구현부가 가지는 내용이 실행되지 않는다.
 

  • 일반 함수

- 일반 함수는 호이스팅(Hoisting)이 발생한다. 호이스팅은 JS파일 다운로드 완료 후 실행 전에 존재하는 모든 함수를 파악하는 기능이다. 고로, 선언 전 호출이 가능하다.

function 함수_이름(매개변수) {
   // 함수 구현부
}
 

- 가령, 전달 받은 전달 인자 a와 b의 합을 반환하는 함수 sum는 아래와 같이 만든다.

function sum(a, b) {
    return a + b;
}
 
 

일반 익명(Anonymous) 함수 이름이 없는 함수이다.

  • 익명 함수는 전달 인자로 전달되거나 어떠한 변수/상수의 값으로 사용되지 않으면 존재할 수 없다.
  • 변수 선언을 통한 익명 함수 대입은 호이스팅이 발생하지 않음으로 선언 전 호출이 불가능하다.
function (매개 변수,...) {
   // 함수 구현부
}
 
let f = function (매개 변수,...) {
  // 함수 구현부
}
 
 

화살표 함수(Arrow Function)

  • 하는 일은 일반 함수랑 같음.
  • 화살표 함수가 가지는 구현부의 구문이 한 개이고, 이가 반환 구문이라면 중괄호와 return 키워드를 생략할 수 있다.
(매개 변수) => {
// 구현부
}
 
let 변수이름 = (매개 변수) => {
// 함수 구현부
}
 
 

일반 함수와 화살표 함수

let f = function(a,b,c) {
return a + b + c;
} 
 
let f = (a, b, c) => {
return a + b + c;
}
 
let f = (a, b, c) => a + b + c;
 

위 방식 모두 같다.

 

반환(Return) : 반환은 함수가 실행됨에 따라 반환할 값 혹은 이를 반환하는 것 그 자체이다. 단, return 시, 그 즉시 해당 함수의 실행이 중단됨으로 유의한다.

- 반환 값이 있는 경우 return 반환값 형태로 작성한다.

- 반환 값이 없는 경우(함수 호출을 중단하려는 경우) return 만 적는다.

let someFunc = () > {
console.log('첫번째 줄');
return;
console.log('두번째 줄'); / 실행되지 않음
};
 
 

기본값 매개변수(Default Parameter)

- 함수 정의시 어떠한 매개변수에 전달 인자가 전달되지 않았을 경우 사용할 기본 값을 지정할 수 있다.

- (매개변수 이름 = 기본 값 ,...) 방식으로 구현할 수 있다.

- 자세한 용법은 '2022-09-19 함수만들기' 과제 참고.

let sum = (a = 0, b = 0, c = 0) > a + b + c;
sum(1, 3); / 4
 
 

전개 구문(Spread Operator)

  • 전개 구문은 그 개수가 정해지지 않은 어떠한 전달 인자를 받기 위한 매개 변수 구조로, 쉼표(,)로 구분된 값의 나열을 배열(Array)로 받을 수 있다.
let sum = (...nums) => {
    nums.forEach(num => console.log(num));
} 
 

 

'JavaScript > 학습내용' 카테고리의 다른 글

[공통] 연산자  (1) 2022.10.04
[공통] 오브젝트  (1) 2022.10.04
[공통] 반복문  (1) 2022.10.04
[공통] 배열  (1) 2022.10.04
[공통] 이벤트  (1) 2022.10.04