$array=@("g")
function foo()
{
$array += "h"
Write-Host $array
}
& {
$array +="s"
Write-Host $array
}
foo
Write-Host $array
当我设置断点并单步执行此脚本时,我得到上面的输出。但是当我使用PowerShell ISE运行它时,我得到了不同的输出:
PS C:\power-scripts> C:\power-scripts\ScopeExample.ps1
Hit Line breakpoint on 'C:\power-scripts\ScopeExample.ps1:8'
[DBG]: PS C:\power-scripts>>
g s
[DBG]: PS C:\power-scripts>>
g h
[DBG]: PS C:\power-scripts>>
g
PS C:\power-scripts> C:\power-scripts\ScopeExample.ps1
s
h
g
有谁知道这是为什么?调试应该与运行脚本相同,无需调试。