Menu
Coddy logo textTech

함수 표현식

Coddy JavaScript 여정의 기초 섹션에 포함된 레슨 — 77개 중 49번째.

JavaScript에서 함수 표현식(function expression)은 함수를 표현식의 일부로 정의하는 방법입니다. 함수 선언문(function declarations)과 달리, 함수 표현식은 호이스팅(hoisted)되지 않으며, 이는 코드에서 정의되기 전에는 호출할 수 없음을 의미합니다.

함수 표현식의 기본 구문은 다음과 같습니다:

let functionName = function(parameters) {
	// 실행될 코드
	// ...
	return value; // 선택적 반환 문
};

function 키워드 뒤에는 선택적으로 함수의 이름이 옵니다. 이름이 제공되면 기명 함수 표현식(named function expression)이 되고, 그렇지 않으면 익명 함수 표현식(anonymous function expression)이 됩니다. 매개변수는 괄호 안에 지정되며, 함수 본문은 중괄호로 감싸집니다.

다음은 기명 함수 표현식(named function expression)의 예입니다:

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

console.log(add(3, 5)); // 출력: 8

이 예제에서 add는 함수를 담고 있는 변수이며, sum은 함수의 선택적인 이름입니다. 함수에 이름이 있더라도 sum을 직접 호출할 수는 없으며, 변수 add를 사용해야 합니다.

다음은 익명 함수 표현식의 예시입니다:

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

console.log(multiply(4, 2)); // 출력: 8

이 경우 함수는 이름을 가지지 않으며, 변수 multiply에 직접 할당됩니다.

함수 표현식은 함수를 다른 함수의 인수로 전달하거나, 즉석에서 함수를 생성하고 싶을 때 자주 사용됩니다.

challenge icon

챌린지

쉬움

두 개의 인자 widthheight를 받아 직사각형의 넓이를 반환하는 calculateArea라는 이름의 함수 표현식을 만드세요. 이 함수는 calculateArea라는 이름의 변수에 할당되어야 합니다.

예를 들어:

console.log(calculateArea(5, 10)); // 출력: 50
console.log(calculateArea(3, 7));  // 출력: 21

치트 시트

함수 표현식은 함수를 표현식의 일부로 정의하며 호이스팅되지 않습니다(정의하기 전에 호출할 수 없습니다).

기본 구문:

let functionName = function(parameters) {
	// 실행될 코드
	return value; // 선택 사항
};

기명 함수 표현식:

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

console.log(add(3, 5)); // 출력: 8

익명 함수 표현식:

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

console.log(multiply(4, 2)); // 출력: 8

함수 표현식은 함수를 인수로 전달하거나 함수를 동적으로 생성할 때 유용합니다.

직접 해보기

// 아래에 코드를 입력하세요


// 아래 줄을 변경하지 마세요
console.log(calculateArea(5, 10));
console.log(calculateArea(3, 7));
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨