[JS] 함수(Function) 1

함수(function)

목차

  1. 정의
  2. 사용 이유
  3. 구성
  4. 입력: 매개변수와 인수
    1. 매개변수(parameter)
    2. 인수(argument)
  5. 출력: 반환값(return)
  6. 참고

1. 정의

함수(function)란?

  • 특정 작업을 수행하는 실행 단위
  • 값을 입력받아 결과를 돌려주는 변환 도구
  • 다른 곳에 전달할 수 있는
  • 프로퍼티를 가질 수 있는 객체
  • 메서드, 생성자, 콜백, 클로저의 기반

즉 JS에서 함수는 실행 가능한 객체이다.

2. 사용 이유

  • 재사용: 같은 코드를 여러 번 쓰지 않기 위해
  • 추상화: 복잡한 동작에 이름을 붙여 의미를 부여하기 위해
  • 분리: 큰 프로그램을 작은 단위로 쪼개기 위해
  • 테스트 용이성: 입력과 출력을 기준으로 검증하기 위해

3. 구성

  1. 함수명
    • 함수명은 함수 내부 코드에서 자신을 재귀적으로 호출하거나 JS 디버거가 해당 함수를 구분하는 식별자로 사용한다.
    • 함수명은 선택사항으로, 함수명이 없는 함수는 익명 함수라 한다.
  2. 매개변수(parameter)
    • 함수의 정의에서 전달받은 인수(arguments)를 함수 내부로 전달하기 위해 사용하는 변수이다.
    • 매개변수는 C, Java와 같은 기존 언어의 함수 매개변수 형태와 비슷하지만, 변수 타입을 기술하지 않는다.
  3. 실행문
  4. 반환문
    • 반환문은 함수의 실행을 중단하고, return 키워드 다음에 명시된 표현식의 값을 호출자에게 반환한다.
    • 반환시 return 타입의 제한은 없다.

예시:

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

이 함수는:

  • 이름: add
  • 매개변수(parameter): a, b
  • 실행문:
  • 반환값(return value): a + b

이다.

호출은 이렇게 한다.

console.log(add(2, 3)); // 5

4. 입력: 매개변수와 인수

4.1. 매개변수(parameter)

함수 정의 시 받는 이름

function greet(name) { ... }

여기서 name

4.2. 인수(argument)

실제 호출할 때 넣는 값이다.

greet("Alice");

여기서 "Alice"

5. 출력: 반환값(return)

함수는 return으로 값을 돌려준다.

function multiply(a, b) {
  return a * b;
}

return이 없으면 기본적으로 undefined를 반환한다.

function logHello() {
  console.log("hello");
}

console.log(logHello()); // undefined

참고

Comments

Newest Posts