map, filter, reduce처럼 동작을 인자로 받아 반복 패턴을 줄입니다.
고차 함수와 콜백 사용 기준
고차 함수는 함수를 값처럼 받아 흐름을 조립하고, 콜백은 나중에 실행할 동작을 전달합니다. 동기와 비동기 맥락을 구분해야 합니다.
01전달
02반환
03동기
04비동기
함수를 반환하면 조건이 담긴 전용 함수를 만들 수 있습니다.
콜백은 실행 시점이 호출자에게 있다는 점을 문서처럼 읽습니다.
비동기 콜백이 깊어지면 Promise나 async/await로 평탄화합니다.