하루5분코딩"고차함수"
11619 단어 JavaScript고차함수JavaScript
## 고차함수: 함수를 인자(argument)로 받거나 함수를 리턴하는 함수(인자로 전달되는 함수를 콜백함수 라고함)
✓다른 함수를 인자로 받는경우
function double(num) { return num * 2; } ------------------------- function doubleNum(func, num) { //doubleNum은 다른함수를 인자로 받는 고차함수이다 .func 은 doubleNum의 콜백함수이다. let doubledArr = []; return func(num); } ------------------------- let output = doubleNum(double, 4);//double 은 함수 doubleNum의 콜백 함수이다. console.log(output); // -> 8
✓함수를 리턴하는경우
function adder(added) { //adder는 고차함수 return function (num) {//익명함수 num을 사용하여 added와 더한 값을 리턴한다. return num + added; }; } ------------------------------- let output = adder(5)(3); console.log(output); //8 ------------------------------- const add3 = adder(3);//adder가 리턴하는 함수를 변수에 저장할수있다 output = add3(2); console.log(output);
✓함수를 인자로 받고, 함수를 리턴하는 경우
function double(num) { return num * 2; } ----------------------------------- function doubleAdder(added, func) { //doubleAdder 는 고차함수다 , func 는 doubleAdder의 콜백함수다. const doubled = func(added); return function (num) { return num + doubled; }; } ----------------------------------- doubleAdder(5, double)(3); // -> 13 //double 은 함수 doubleAdder의 콜백으로 전달되었다. ----------------------------------- const addTwice3 = doubleAdder(3, double); addTwice3(2); // --> 8
Author And Source
이 문제에 관하여(하루5분코딩"고차함수"), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@-hsw9724/하루코딩5분고차함수저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)