ES6 Arrow Functions를 활용한 JavaScript 함수형 프로그래밍
JavaScript에서 함수를 작성하는 방법은 여러 가지가 있지만, ES6에서 소개된 Arrow Functions는 코드를 더 간결하고 이해하기 쉽게 만들어줍니다. 특히 함수형 프로그래밍에 관심이 있는 주니어 개발자들에게 Arrow Functions는 매우 유용한 도구입니다. 이 글에서는 Arrow Functions의 기본 사용법과 그 장점을 알아보겠습니다.
Arrow Functions 기본
Arrow Functions는 function
키워드 대신 =>
기호를 사용하여 함수를 빠르게 정의할 수 있게 해줍니다. 예를 들어, 전통적인 함수 표현식은 다음과 같습니다:
const add = function(a, b) {
return a + b;
};
이를 Arrow Functions로 바꾸면 다음과 같이 됩니다:
const add = (a, b) => a + b;
보시다시피, 코드가 훨씬 간결해졌습니다. 함수 본문이 한 줄이고, 그 결과를 바로 반환하는 경우 {}
와 return
키워드를 생략할 수 있습니다.
매개변수가 하나인 경우
매개변수가 하나뿐인 경우, 괄호도 생략할 수 있습니다. 예를 들어:
const square = n => n * n;
이 코드는 숫자의 제곱을 반환하는 간단한 함수입니다.
다양한 사용 사례
Arrow Functions는 배열 메서드와 함께 사용될 때 그 진가를 발휘합니다. 예를 들어, 객체의 배열이 있고, 특정 속성으로 필터링하고 싶다면 다음과 같이 할 수 있습니다:
const people = [
{ name: 'John', age: 25 },
{ name: 'Jane', age: 28 },
{ name: 'Jack', age: 30 }
];
const youngPeople = people.filter(person => person.age < 30);
console.log(youngPeople); // [{ name: 'John', age: 25 }, { name: 'Jane', age: 28 }]
이 예제에서 filter
메서드는 각 요소에 대해 주어진 함수를 실행하고, 그 결과가 true
인 요소들만으로 새 배열을 만듭니다. Arrow Functions를 사용하면 이러한 종류의 연산을 매우 간결하게 표현할 수 있습니다.
결론
Arrow Functions는 JavaScript에서 함수를 정의하는 간결하고 효율적인 방법을 제공합니다. 특히, 배열과 같은 컬렉션을 다룰 때 그 유용성이 더욱 돋보입니다. 주니어 개발자들이 함수형 프로그래밍의 개념을 더 쉽게 이해하고 적용할 수 있도록, Arrow Functions의 사용법을 익히는 것이 좋습니다. Happy coding!