代码
- interface 方式
interface myFn7 {
(a: string, b: string): string;
}
let myFn7Demo: myFn7 = function (a: string, b: string): string {
return a + b;
}
console.log(myFn7Demo("a","b"), "myFn7Demo")
interface myFn8 {
['myfn1'](a: string, b: string): string;
}
let myObjxxx:myFn8={
myfn1(a: string, b: string): string {
return a + b;
}
}
let result888=myObjxxx.myfn1("a","b")
console.log(result888,"result888")
- type 方式
type myfnType1=(a:string)=>string;
const myfn123:myfnType1=(a:string)=>{
return a;
}
let resultyyy=myfn123("123")
console.log(resultyyy,"resultyyy")
函数args使用方式
type myfnType3=(a?:string,...args:string[])=>string;
const myfn333:myfnType3=(a:string,...args:string[])=>{
console.log(args,"args") //其余参数形成一个数组
return a+args.join("");
}
let resultyyy3=myfn333("123","sdlkjfsdf","sldfjsdfsj")
console.log(resultyyy3,"resultyyy3")
// type myfnType4=(...args:string[])=>string;
const myfn444=(...args:string[])=>{
console.log(args,"args") //其余参数形成一个数组
return args.join("");
}
let resultyyy4=myfn444("123","sdlkjfsdf","sldfjsdfsj")
console.log(resultyyy4,"resultyyy4")
...args 代表把所有的参数传递到args数组里面,用其他命名也可以

前端工程师、程序员

浙公网安备 33010602011771号