我有一个函数 'foo' 和一个引用它的变量 '$foo'。
function foo
{
param($value)
$value + 5
}
$foo = foo
$foo
我可以在没有 args 的情况下调用 $foo,但是如何传递参数?这不起作用:
$foo 5
$foo(5)
实际上目标是编写这样的代码:
function bar {
param($callback)
$callback 5
}
bar(foo)
我有一个函数 'foo' 和一个引用它的变量 '$foo'。
function foo
{
param($value)
$value + 5
}
$foo = foo
$foo
我可以在没有 args 的情况下调用 $foo,但是如何传递参数?这不起作用:
$foo 5
$foo(5)
实际上目标是编写这样的代码:
function bar {
param($callback)
$callback 5
}
bar(foo)
问题是当你这样做
$foo = 富
您将函数的结果放在变量 $foo 中,而不是函数本身!
试试这个 :
$foo = 获取内容功能:\foo
像这样称呼它
& $富 5
希望能帮助到你 !
使用脚本块。
# f.ps1
$foo =
{
param($value)
$value + 5
}
function bar
{
param($callback)
& $callback 5
}
bar($foo)
运行它:
> ./f.ps1
10
编辑第一次误读问题
您需要做的是使用 & 运算符
& $foo 5
$foo = foo 5