Middle+
არსებობს თუ არა ფუნქცია foo, რომელიც იღებს ნებისმიერი ტიპის არგუმენტებს და აბრუნებს მათ? როგორ დავრწმუნდეთ, რომ შედეგის ტიპი არ იყოს any, არამედ შესაბამისი იყოს გადაცემული არგუმენტის ტიპთან? გამოიყენეთ გენერიკები.
sobes.tech AI
პასუხი 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 — это параметр типа, который выводится из переданного аргумента, и функция возвращает значение того же типа.