【发布时间】:2020-12-16 11:08:16
【问题描述】:
我已经开始使用 PowerShell 来完成一些事情,并在 PowerShell 中使用变量 $null。
我遇到的问题是,当我将变量$null 分配给类中定义的变量时,测试返回false 而不是true。
示例代码:
class test {
[string]$test1
}
$test = [test]::new()
$test.test1 = $null
$null -eq $test2 # tests true
$null -eq $test.test1 # tests false
现在,未定义变量 $test2 的测试返回 true,因为 PowerShell 中的每个未定义变量都被分配了 $null。
但是,如果我测试我分配给$null 的对象test1 的属性test1 测试false 为$null
是不是因为在 PowerShell 中$null 是一个值为$null 的对象,而现在该对象的属性不是$null,因为它分配了一个空值的对象$null?
我已经阅读了 Microsoft "Everything you wanted to know about $null" 的文档,但它并没有启发我。
如果我不初始化变量,那么它将测试true 是否为$null。
【问题讨论】:
标签: powershell