const func5: <T>(a: T, b: T) => T = (a, b) => {
const res = a + b;
// console.log(a, b);
return a;
};
ts报了 运算符“+”不能应用于类型“T”和“T” 的错误
const func5: <T>(a: T, b: T) => T = (a, b) => {
const res = a + b;
// console.log(a, b);
return a;
};
ts报了 运算符“+”不能应用于类型“T”和“T” 的错误
因为你的泛型T没有类型限制,如果传入一个布尔值,一个对象,一个数组都会出问题
所以要给泛型限制类型
const func5: <T extends number>(a: T, b: T) => T = (a, b) => {
const res = a + b;
// console.log(a, b);
return a;
};
13 回答13k 阅读
8 回答2.7k 阅读
2 回答5.2k 阅读✓ 已解决
7 回答2.1k 阅读
5 回答1.3k 阅读
3 回答2.3k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
T 要收缩为
string
或者number