Middle+
Ar egzistuoja funkcija foo, kuri priima bet kokio tipo argumentus ir juos grąžina? Kaip užtikrinti, kad rezultato tipas nebūtų any, o atitiktų perduoto argumento tipą? Naudokite Generikus.
sobes.tech AI
Atsakymas iš 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 — это параметр типа, который выводится из переданного аргумента, и функция возвращает значение того же типа.