存在一个问题,其中“ f<T>(val:T) {}; f(5);
”导致T的字面类型为5而不是Number。我是否可以在此指定我不希望使用文字类型,因为在这种情况下,我希望T为数字(或任何非文字)?
答案 0 :(得分:0)
Name value Date ID
Ba 100 01-01 2
He 105 01-01 1
Ha 102 01-01 4
Ke 104 01-01 3
Ba 101 01-02 2
He 104 01-02 1
Ha 103 01-02 4
Ke 105 01-02 3
将为您做到这一点,但也会阻止任何数字类型
extends number
但是将地图号添加到5中将适用于任何类型
let f1 = <T extends number>(val: T) => val;
let result1 = f1(5); // 5
let result2 = f1(true) // Error