是否可以在Dart中使用部分应用程序(部分/应用/固定参数)

atr*_*eon 5 functional-programming partial-application dart

从具有多个参数的函数中,我们能否仅对其部分应用一个或两个参数,从而返回采用其余参数的新函数?

使用Ramda的Javascript示例

function buildUri (scheme, domain, path) {
  return `${scheme}://${domain}/${path}`
}

const buildHttpsUri = R.partial(buildUri, ['https']);

const twitterFavicon = buildHttpsUri('twitter.com', 'favicon.ico');
Run Code Online (Sandbox Code Playgroud)

Gün*_*uer 5

您可以转发到另一个功能

String buildUri (String scheme, String domain, String path) {
  return `${scheme}://${domain}/${path}`
}

String buildHttpsUri(String domain, String path) => buildUri('https', domain, path);
Run Code Online (Sandbox Code Playgroud)