
고차함수는 함수를 변수처럼 파리미터로 넘겨 줄 수도 있고 결과값을 반환받을수도 있는 함수입니다.

doubleNum 함수는 고차함수이고 doubleNum 함수에 callback에 함수가 들어올 경우 callback은 doubleNum 함수의 콜백함수 입니다.
doubleNum( double,50 )의 경우 double은 doubleNum의 콜백함수 입니다.

subtractor 은 고차함수이고 다른 함수를 return합니다.
subtractor(5)는 함수이므로 호출 연산자()를 사용할 수 있습니다.

Javascript에서 함수는 일급 객체이기 때문에 subtractor 함수가 리턴하는 함수를 변수에 저장할 수 있습니다.

doubleSubtractor는 고차함수이고 double 함수를 callback으로 전달받았다.