Get to know MDN better
This page was translated from English by the community. Learn more and join the MDN Web Docs community.
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015년 7월.
함수 선언(function declaration)은 지정된 매개변수(parameter)를 갖는 함수를 정의합니다.
Function 생성자나 함수 표현식(function expression)을 사용해서 정의할 수도 있습니다.
함수 이름.
param함수로 전달되는 인수(argument)의 이름. 인수의 최대 개수는 엔진마다 다름.
statements함수의 몸통(body)을 구성하는 문(statement).
함수 선언으로 생성된 함수는 Function 객체로, Function 객체의 모든 속성(property), 메서드 및 행위 특성(behavior)을 갖습니다. 함수에 관한 더 자세한 정보는 Function 참조하시기 바랍니다.
함수는 또한 표현식(함수 표현식 참조)을 사용하여 생성될 수 있습니다.
기본적으로 함수는 undefined를 반환합니다. 다른 값을 반환하기 위해서는, 함수는 반환값을 지정하는 return 문이 있어야 합니다.
함수는 조건부로 선언될 수 있습니다. 즉, function 문은 if 문 안에 들어갈 수 있습니다. 하지만, 구현에 따라 결과에 일관성이 없으므로 이 패턴은 실제 코드에서는 사용해선 안됩니다. 조건부로 함수를 생성하고자 한다면, 함수 표현식(function expression)을 대신 사용하세요.
결과는 참으로 평가되는 조건과 정확하게 일치합니다.
JavaScript에서 함수 선언은 그 선언을 둘러싼 함수의 최상부나 전역 범위(global scope)로 끌어올려집니다.
함수 표현식은 끌어올려지지 않으므로 주의하세요:
다음 코드는 제품 a, b 및 c의 단위 판매량이 주어졌을 때, 총 판매량을 반환하는 함수를 선언합니다.
| ECMAScript® 2027 Language Specification # sec-function-definitions |
Enable JavaScript to view this browser compatibility table.
This page was last modified on 2025년 2월 11일 by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.