Function 在Dart中使用参数数组调用函数

Function 在Dart中使用参数数组调用函数,function,methods,parameters,dart,Function,Methods,Parameters,Dart,我试图用数组中提供的一组参数调用dart中的函数。我希望能够将参数传递给函数,而不知道将有多少个参数 例: 在dart中是否有一种更干净的方法可以在不更改someFunc签名的情况下执行此操作?据我所知。此时,Dart不支持varargs。现在,只需将一个Iterable作为参数即可。不久前我发布了一个类似的问题: 目前不受支持,但dart团队知道此功能。但不是他们的优先权。 这种方法正是你想要的。 您可以执行Function.apply(func,params),如果参数匹配,它将调用func

我试图用数组中提供的一组参数调用dart中的函数。我希望能够将参数传递给函数,而不知道将有多少个参数

例:


在dart中是否有一种更干净的方法可以在不更改someFunc签名的情况下执行此操作?

据我所知。此时,Dart不支持
varargs
。现在,只需将一个
Iterable
作为参数即可。

不久前我发布了一个类似的问题:

目前不受支持,但dart团队知道此功能。但不是他们的优先权。

这种方法正是你想要的。 您可以执行
Function.apply(func,params)
,如果参数匹配,它将调用
func
(如果参数不匹配,则抛出)

someFunc(var a, var b, var c) {...}
paramArray = [1,2,3];

callFunction(var func, var params) {
  //Here is a sloppy workaround to what I want the functionality to be
  switch(params.length) {
  case 0:
      func()
      break;
    case 1: 
      func(params[0])
      break;
    case 2: 
      func(params[0], params[1])
      break;
    ...
  }
}

callFunction(someFunc, paramArray);