자바스크립트 함수? 알고 써야지!
함수란?
자바스크립트에서 함수는 일련의 코드 문장을 하나의 블록으로 묶은 것입니다. 이를 통해 코드의 재사용성과 유지보수성이 좋아집니다. 함수는 다양한 방법으로 작성될 수 있으며, 예를 들어 함수 표현식과 함수 선언문이 있습니다.
함수의 기본 구조
function functionName(parameter1, parameter2, ...) {
// 함수 코드
return result;
}
함수는 위와 같은 기본 구조를 갖습니다. 함수 이름은 개발자가 직접 지정하거나, 익명 함수로 작성할 수도 있습니다. 함수 내부의 코드는 중괄호({})로 묶여 있으며, 매개변수(parameter)는 함수를 호출할 때 전달되는 값입니다. 함수는 값을 반환할 수도 있으며, 이때는 return 키워드를 사용합니다.
콜백 함수
function calculate(num1, num2, callbackFunction) {
const result = num1 + num2;
callbackFunction(result);
}
calculate(5, 10, function(result) {
console.log(result);
});
콜백 함수는 함수의 매개변수로 전달되는 함수를 의미합니다. 위의 코드에서 calculate 함수는 두 개의 숫자를 더한 결과값을 콜백함수로 전달합니다. 따라서 calculate 함수를 호출할 때, 더한 결과값을 처리하기 위한 함수를 함께 전달합니다. 이를 통해 비동기 처리와 이벤트 처리 등 다양한 상황에서 유용하게 사용됩니다.
클로저
function outerFunction() {
const outerVar = 'Hello, ';
function innerFunction(name) {
return outerVar + name;
}
return innerFunction;
}
const greeting = outerFunction();
console.log(greeting('world!'));
클로저는 함수와 함수가 선언된 어휘적 환경의 조합입니다. 위의 코드에서 innerFunction은 외부 함수 outerFunction의 지역 변수인 outerVar을 사용합니다. 이때 innerFunction에서는 outerVar의 값을 유지하며 사용합니다. 이를 통해 private 변수와 비슷한 역할을 할 수 있습니다.
자바스크립트 함수를 잘 활용하면 유지보수성이 좋은 코드를 구현할 수 있습니다. 콜백 함수와 클로저를 익혀 다양한 상황에서 활용할 수 있는 함수를 작성해 보세요.
키워드: 자바스크립트 함수, 함수 표현식, 함수 선언문, 매개변수, 반환값, 콜백 함수, 클로저