📜  具有两个参数的高阶函数 - TypeScript (1)

📅  最后修改于: 2023-12-03 14:50:06.823000             🧑  作者: Mango

具有两个参数的高阶函数 - TypeScript

高阶函数是接收其他函数作为参数或将函数作为返回值的函数。在TypeScript中,我们可以使用类型注释来明确类型,以提高代码的可读性和可维护性。

一个具有两个参数的高阶函数,可以像这样声明:

function higherOrderFunc<T, U>(value: T, func: (arg: T) => U): U {
  return func(value);
}

这个函数有两个参数:valuefunc。其中,value是输入参数,func是一个接受T类型参数并返回U类型的函数。这个高阶函数的返回值是U类型。

接下来,我们可以写一个函数来作为func的参数,并调用它:

function stringLength(str: string): number {
  return str.length;
}

const length = higherOrderFunc('Hello World!', stringLength); // length = 12

在这个例子中,我们传入了一个字符串和一个函数stringLength作为参数。stringLength是一个接受字符串类型参数并返回数字类型的函数。higherOrderFunc函数将'Hello World!'作为输入参数,stringLength作为func参数,并返回字符串的长度12

使用高阶函数可以大大提高代码的重用性和可读性。我们可以在函数中传递不同的函数来实现不同的业务逻辑,从而避免冗余的代码。

如果你想了解更多关于高阶函数的知识,请参阅TypeScript官方文档