【发布时间】:2021-12-18 07:45:03
【问题描述】:
我不明白为什么会报错
function foo(): () => string {
return () => 123;
}
但这不是
function foo(): () => void {
return () => 123;
}
而且这也不会出错
function foo(): (a: number) => string {
return () => '123';
}
我明确键入返回的函数应该接受一个参数,然后返回一个不接受任何参数的函数,但 TS 没有给我任何错误。
【问题讨论】:
-
因为一个数字可以忽略(
void),但不是string。 -
@Bergi 您能否在评论中提供更多解释?很难理解你的意思。
-
等等,你是在问两个问题吗?您从“还有……”开始,这似乎是关于不同代码的第二个问题。 Please limit each post to one question。此外,您的第二个问题似乎是在第一个问题已经得到答案之后被编辑的。 Please do not add followup questions to existing questions。第二个问题的正确做法是创建一个新帖子。
标签: javascript typescript typescript-typings