반응형
일급 함수는 프로그래밍 언어에서 함수를 값으로 다루는 특성을 가리킵니다. 이는 함수를 변수에 할당하고, 다른 함수의 매개변수로 전달하거나, 함수에서 반환하는 등의 작업을 가능하게 합니다. 일급 함수를 지원하는 언어에서는 함수형 프로그래밍 개념을 효과적으로 활용할 수 있습니다. 자바스크립트, 파이썬, 스칼라, 하스켈 등이 일급 함수를 지원하는 언어 중 일부입니다. 이러한 언어에서는 고차 함수(higher-order functions)를 사용하여 함수를 다루는 데 높은 수준의 편의성을 제공합니다.
예시
- 함수를 변수에 할당:
var greet = function(name) { console.log("안녕하세요, " + name + "님!"); }; var sayHello = greet; sayHello("홍길동");
- 함수를 다른 함수의 매개변수로 전달:
function calculate(a, b, operation) { return operation(a, b); } var add = function(x, y) { return x + y; }; var result = calculate(5, 3, add);
- 함수를 다른 함수에서 반환:
function multiplier(factor) { return function(x) { return x * factor; }; } var multiplyByTwo = multiplier(2); var result = multiplyByTwo(5); // 결과는 10
- 함수를 익명 함수로 사용:
var numbers = [1, 2, 3, 4, 5]; var squaredNumbers = numbers.map(function(x) { return x * x; });
이러한 예시들은 자바스크립트에서 함수가 일급 함수로 다뤄질 수 있는 몇 가지 방법을 보여줍니다. 함수를 변수에 할당하거나 매개변수로 전달하는 등의 특성으로 인해 자바스크립트에서 함수는 일급 함수라고 불립니다.
정리
- 함수를 다른 변수처럼 다뤄질 때 일급함수를 가진다고 한다.
- 자바스크립트의 Arrow Function은 결국 익명함수를 변수에 저장하여 사용되는데, 이것은 일급함수의 특성을 갖고 있기 때문에 가능한 것이다.
- 함수를 값으로 가질 수 있기 때문에 다른 함수의 매게변수로 사용될 수 있다. (이를 콜백함수라 한다.)
반응형
'Language > JavaScript' 카테고리의 다른 글
| [JavaScript] 삼항연산자 / 논리연산자 / 단축평가 / Nullish (0) | 2024.01.31 |
|---|---|
| [JavaScript] Class 문법이란? (0) | 2022.12.15 |
