Type T | undefined is not assignable to type T
来源:2-12 泛型(Generics) 第三部分 - 类和接口

5942
2022-12-16
老师好,这个问题怎么解比较好?如果在pop的返回类型用T | undefined,使用pop的结果又会推断有问题。
写回答
2回答
-
weixin_慕前端1237624
2023-01-13
懂了。
00 -
张轩
2022-12-17
同学你好
这里就应该返回 T | undefined ,这样才符合逻辑,因为一个空数组是有可能返回 undefined,
//返回的结果使用类型收窄就可以,先判断返回值是否存在 const result = queue.pop() // result 在这里是 T 或者 undefined if (result) { // 现在 result 已经是 T 类型了 } // 这样 TS 成功的帮我们规避了错误
012023-01-13
相似问题