상식닷컴
로그인
가입하기
2026년 상식닷컴 선정 식당 & 카페 리스트
2025년 2026년 신상 호텔 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요
일주일 식단표 어플
자동 일주일 식단표 어플
안드로이드
아이폰
주식 & 코인 차트의 신
1000만원으로 2000만원 만들기 프로젝트
궁금한 상식 보기
마루노우치에 있는 주요 기업들은 어떤 것들이 있나요?
마루노우치에서의 유명한 패션 이벤트는 무엇인가요?
크록스의 사이즈는 어떻게 선택하나요?
크록스의 수명은 얼마나 되나요?
스케쳐스의 주요 제품군은 무엇인가요?
덴마크의 전통 시장은 어디에 있나요?
덴마크의 전통 음료는 무엇인가요?
등산을 하면서 느끼는 신체적 변화는 어떤 것인가요?
등산을 할 때 필요한 기본적인 식사 준비 방법은 무엇인가요?
방귀를 뀌는 것이 특정 음식의 소화 과정에서 어떤 역할을 하나요?
사투리와 관련된 유명한 방송 프로그램은?
CPU의 성능을 높이기 위한 프로세스 관리 기술의 역할은 무엇인가요?
Previous
Next
수정하기 - 자바스크립트에서 currying이란 무엇인가요?
닉네임
비밀번호
제목
내용
[이미지 업로드는 권한이 있는 사람만 가능. 하단 카톡으로 연락]
Currying은 함수형 프로그래밍에서 중요한 개념으로, 다수의 인자를 받는 함수를 단일 인자를 받는 함수들의 연속으로 변환하는 기법입니다. 즉, 여러 개의 인자를 받는 함수를 여러 개의 단일 인자를 받는 함수로 변환하여, 각 인자를 하나씩 적용할 수 있도록 하는 것입니다. 이 과정을 통해 함수의 재사용성과 가독성을 높일 수 있습니다. Currying의 기본 개념 예를 들어, 일반적인 함수가 두 개의 인자를 받는다고 가정해 보겠습니다: ```javascript function add(x, y) { return x + y; } ``` 위의 `add` 함수는 두 개의 인자 `x`와 `y`를 받<a href='https://sangseek.com/sangseeks/아서/ko'>아서</a> 그 합을 반환합니다. 그러나 currying을 적용하면 이 함수를 다음과 같이 변환할 수 있습니다: ```javascript function curriedAdd(x) { return function(y) { return x + y; }; } ``` 이제 `curriedAdd` 함수는 하나의 인자 `x`를 받고, 또 다른 함수를 반환합니다. 이 반환된 함수는 두 번째 인자 `y`를 받아서 두 인자의 합을 계산합니다. <a href='https://sangseek.com/sangseeks/사용 예/ko'>사용 예</a>시는 다음과 같습니다: ```javascript const addFive = curriedAdd(5); // x에 5를 고정 console.log(addFive(3)); // 8 console.log(addFive(10)); // 15 ``` 위의 예에서 `addFive`는 `curriedAdd`를 통해 `x`에 5를 고정한 새로운 함수입니다. 이렇게 currying을 사용하면 특정 인자를 미리 설정해두고, 나중에 다른 인자를 적용하여 사용할 수 있습니다. Currying의 장점 1. 재사용성 : 특정 인자를 미리 설정한 함수를 생성함으로써, 코드의 재사용성을 높일 수 있습니다. 예를 들어, 여러 번 사용되는 특정 값으로 함수를 고정해 두면, 코드가 더 간결해집니다. 2. 가독성 : 함수의 인자를 하나씩 적용하는 방식은 코드의 흐름을 명확하게 하여 가독성을 높입니다. 각 단계에서 어떤 인자가 사용되는지 쉽게 이해할 수 있습니다. 3. 부분 적용 : currying은 부분 적용(partial application)을 가능하게 합니다. 즉, 함수의 일부 인자만을 고정하고 나머지 인자는 나중에 제공할 수 있습니다. 4. <a href='https://sangseek.com/sangseeks/함수 조합/ko'>함수 조합</a> : 여러 개의 작은 함수를 조합하여 더 복잡한 함수를 만들 수 있습니다. 이는 함수형 프로그래밍의 핵심 원칙 중 하나입니다. Currying의 예제 다음은 currying을 활용한 좀 더 복잡한 예제입니다: ```javascript function multiply(x) { return function(y) { return x * y; }; } const double = multiply(2); const triple = multiply(3); console.log(double(5)); // 10 console.log(triple(5)); // 15 ``` 위의 예제에서 `multiply` 함수는 인자 `x`를 받아서 `y`와 곱하는 함수를 반환합니다. `double`과 `triple`은 각각 2와 3으로 고정된 함수를 생성하여, 나중에 다른 인자를 적용할 수 있습니다. 결론 Currying은 자바스크립트와 같은 함수형 프로그래밍 언어에서 매우 유용한 기법입니다. 이를 통해 코드의 재사용성과 가독성을 높일 수 있으며, 함수 조합 및 부분 적용을 통해 더 유연한 프로그래밍이 가능합니다. 이러한 특성 덕분에 currying은 복잡한 애플리케이션을 개발할 때 특히 유용하게 사용될 수 있습니다.
이용안내
커뮤니티 이용안내
×
- 게시한 게시글로 발생하는 문제는 게시자에게 책임이 있습니다.
- 게시글이 타인/타업체의 저작권을 침해할 경우 모든 책임은 게시자에게 있습니다. 게시자가 모든 손해를 부담해야 합니다.
- 상식닷컴 운영자는 게시자와 상의하지 않고 게시글을 수정 또는 삭제할 수 있습니다.
- 상식닷컴 운영자는 깨끗한 커뮤니티 공간을 만드는 것이 1순위입니다.
수정하기
취소하기