我知道我可以对or等进行instanceOf
检查,但是有没有一种通用的方法来查看某些东西是否正常运行(它可以有任意数量的 args)。我尝试定义这样的东西:Function1
Function2
type FuncType = (Any*) -> Any
但这也不起作用。基本上我有一些看起来像这样的代码:
call = (name: Any, args: Any*) -> if name.isFunction then name.castAs[Function].apply(args) else name
aFunction = (name: String) => "Hello " + name
notAFunction = "Hello rick"
call(aFunction, "rick")
call(notAFunction)