1、关于typescript函数类型接口,定义encrypt函数类型接口,keyvalue两个形参
interface encrypt{
(key:string,value:string):string
}
2、定义函数md5实现encrypt函数类型接口,只用一个key形参,visual studio code不报错,在使用md5函数时会提示要传两个参数
let md5:encrypt=function (key:string):string{
return key
}
3、定义函数sha1实现encrypt函数类型接口,多用一个id形参,visual studio code报错
let sha1:encrypt=function(key:string,value:string,id:string):string{
return key+value+id
}
疑问:encrypt函数类型接口定义keyvalue两个形参,不是函数实现该接口必须使用两个形参吗?为什么只用一个key形参就可以,使用多一个id形参就不可以,是什么控制的原则?
查文档没有查到,请伙伴们释疑,谢谢。
参考以下两个链接
typescript-interface-implementing-doesnt-check-method-parameters
type-compatibility