如何判断变量是否在dart中“可调用”?

时间:2014-06-04 21:55:13

标签: dart

我正在做一个dart的小实验,我找不到一种方法来确定变量是否是“可调用的”而没有显式检查每种类型(String,int,bool,ect)并猜测它是否可调用没有那些。我还尝试了一下try / catch,这对我来说似乎错了。

以正确的方式或至少是做出决定的最佳方式?

这是我做的一个例子来展示我想要完成的事情: https://gist.github.com/digitalfiz/3f431dc07ca761389062

1 个答案:

答案 0 :(得分:7)

class Callable{
  call() => 42;
}
void main() {
  var foo = ()=>42;
  var bar = new Callable();
  var baz = 42;
  bool isCallable(v) => v is Function;
  print(isCallable(foo)); //true
  print(isCallable(bar)); //true
  print(isCallable(baz)); //false
}