类型问题
来源:11-24 【参数装饰器底层源码】 参数装饰器 + 详解底层 JS 源码

jonben
2022-04-23
type paramsType1 = (targetPrototype: any, methodName: string, paramIndex: number) => any
function fn1():paramsType1 {
return function() { // S100
}
}
paramsType1定义的函数类型接收的是3个参数
在fn1函数中定义返回类型是paramsType1
为什么S100 的匿名函数中不传递参数也不会报错呢
写回答
1回答
-
keviny79
2022-04-23
TS 中, 有个函数类型规则, 某个函数类型可以接受比它参数个数少或者空参数的函数。例如:
const fn:(param1:string,param2:number)=>any=(str:string):void=>{}//success
const fn2:(param1:string,param2:number)=>any=():number=>{//sucess
return 3;
}
// 注意:函数类型的返回值和函数要是匹配,或包含关系【就是函数返回值是函数类型的返回值的子类类型】
let fn3:(param1:string,param2:number)=>number=():string=>{//错误
return 3;
}
00
相似问题
Ts 类型 symbol 不能为索引
回答 1
请老师帮看下问题
回答 1