如何在打字稿中将参数传递给内部和外部函数?

How to pass arguments to both inner and outer function in typescript?

我有一个功能,returns另一个功能。我需要将参数传递给这两个函数。当我尝试这样做时,我只能传递一个论点而不是两个。如何将两个参数传递给 validatorRegex?

export const validatorRegex = (regex: RegExp | RegExp[]) => (value: string) =>
  Array.isArray(regex) ? regex.every((rx) => rx.test(value)) : regex.test(value);

validatorRegex 就是所谓的 curried 函数。它没有采用两个参数,而是采用一个参数和 returns 一个采用另一个参数的函数。你可以这样称呼它:

validatorRegex(/foo/)('bar')

这是以下简称:

const f = validatorRegex(/foo/)
f('bar')