TypeScript func(fn: (value: T) => {}) callBack function

agnusdei·2023년 7월 7일
0
func(fn: (value: T) => {})

타입스크립트에서 func(fn: (value: T) => {})와 같은 표기법은 함수의 매개변수로 사용되는 콜백 함수를 나타내는 것입니다. 이러한 표기법은 콜백 함수의 매개변수 타입과 반환 타입을 명시하기 위해 사용됩니다.

fn: (value: T) => {}fn이라는 매개변수가 있는 함수를 나타내며, 이 함수는 value라는 매개변수를 가지고 있고 반환값이 없음을 의미합니다. 중괄호 {}는 빈 객체를 나타내며, 반환 타입이 없음을 나타내기 위해 사용됩니다.

아래는 타입스크립트에서 콜백 함수를 사용하는 몇 가지 예시입니다.

  1. 콜백 함수를 인자로 받는 함수:
function processArray(array: number[], callback: (value: number) => void) {
  for (const item of array) {
    callback(item);
  }
}

const numbers = [1, 2, 3, 4, 5];
processArray(numbers, (value) => {
  console.log(value); // 각 숫자를 출력하는 콜백 함수
});
  1. 배열의 요소에 대한 연산을 수행하는 콜백 함수:
function mapArray<T>(array: T[], callback: (value: T) => T): T[] {
  const result: T[] = [];
  for (const item of array) {
    result.push(callback(item));
  }
  return result;
}

const numbers = [1, 2, 3, 4, 5];
const doubledNumbers = mapArray(numbers, (value) => value * 2);
console.log(doubledNumbers); // [2, 4, 6, 8, 10]
  1. 조건을 검사하여 필터링하는 콜백 함수:
function filterArray<T>(array: T[], callback: (value: T) => boolean): T[] {
  const result: T[] = [];
  for (const item of array) {
    if (callback(item)) {
      result.push(item);
    }
  }
  return result;
}

const numbers = [1, 2, 3, 4, 5];
const evenNumbers = filterArray(numbers, (value) => value % 2 === 0);
console.log(evenNumbers); // [2, 4]

위 예시들에서 콜백 함수는 value 매개변수를 사용하여 작업을 수행하고, 반환 타입은 void, T, boolean 등 다양하게 사용될 수 있습니다. 타입스크립트에서 이러한 콜백 함수 표기법을 사용하면 함수의 타입을 명확하게 지정하여 코드의 가독성과 유지보수성을 향상시킬 수 있습니다.

0개의 댓글