Sobes.tech
Middle+

Gibt es eine Funktion foo, die Argumente vom Typ any akzeptiert und sie zurückgibt? Wie kann man sicherstellen, dass der Rückgabetyp nicht any ist, sondern dem Typ des übergebenen Arguments entspricht? Verwende Generics.

sobes.tech KI

Antwort von AI

Чтобы функция foo принимала аргумент типа any и возвращала значение того же типа, нужно использовать Generic типы в TypeScript. Это позволит сохранить тип аргумента и использовать его как тип результата.

Пример:

function foo<T>(arg: T): T {
  return arg;
}

// Использование:
const num = foo(123);      // тип num: number
const str = foo('hello');  // тип str: string
const obj = foo({a: 1});   // тип obj: { a: number }

Здесь T — это параметр типа, который выводится из переданного аргумента, и функция возвращает значение того же типа.